l0pez
August 20, 2009, 12:53pm
1
Dlaczego w widoku taka konstrukcja działa:
<% form_for @request, :url => request_path(@request) do |f| %>
a taka nie:
<% form_for @request do |f| %>
i rzuca takim błędem:
request_url failed to generate from {:action=>“show”, :controller=>“requests”, :id=>[]}, expected: {:controller=>“requests”, :action=>“show”}, diff: {:id=>[]}
Pozdrawiam
Tubis
August 20, 2009, 1:12pm
2
W kontrolerze akcja new:
@request = Request.new
EDIT: Teraz zauważyłem, że robisz formularz w akcji show. Powinien być raczej w akcji new, ale jeśli koniecznie chcesz w show to wrzuć ten kod co dałem do akcji show.
l0pez
August 20, 2009, 1:22pm
3
formularz jest w new: oto kontoler:
[code=“ruby”]…
def show
@request = Request.find(params[:id])
respond_to do |format|
format.html
end
end
def new
@request = Request.new
respond_to do |format|
format.html
end
end
…[/code]
l0pez
August 21, 2009, 6:07am
4
Znalazłem błąd, jeden z named scopów w modelu request nazwałem :new.
Ehh, to on tyle namieszał.
Pozdrawiam