во-первых: я обещаю, что прочитал все сообщения на эту тему, обыскал весь Интернет, но до сих пор не знаю...
У меня есть модели Trip (has_many) и Accomodation (belongs_to). Размещение вложено в поездку:
resources :trips do
resources :routes, :accomodations
end
Контроллер выглядит так:
def new
@accomodation = Accomodation.new
end
def create
@accomodation = Accomodation.new(params[:accomodation])
if @accomodation.save
flash[:success] = "Accomodation created!"
redirect_to new_trip_accomodation_path(@trip)
else
render 'pages/home'
end
end
Форма:
<%= form_for([@trip, @accomodation]) do |f| %>
<%= render 'shared/error_messages', :object => f.object %>
<div class="field">
<%= f.label :title, "Titel" %>
<%= f.text_field :title %>
</div>
<div class="field">
<%= f.label :description, "Beschreibung" %>
<%= f.text_field :description %>
</div>
<div class="actions">
<%= f.submit "Create" %>
</div>
<% end %>
Форма отображает правильный html (насколько я вижу):
<form accept-charset="UTF-8" action="/trips/51/accomodations" class="new_accomodation" id="new_accomodation" method="post">
Итак, когда я отправляю форму, ничего не происходит. Когда я просматриваю журнал сервера, я вижу запрос на получение новой формы. Но никакой реакции на отправку... Форма вообще не отправляется? Почему? Я понятия не имею.
Что еще я пробовал?
<%= form_for([@trip, @accomodation], :url => { :action => :create }, :method => :post) do |f| %>
Ничего такого.
<%= form_for([@trip, @accomodation], :url => { :action => :create }, :method => :post) do |f| %>
Тоже ничего.
<%= form_for([@trip, @accomodation, @trip.accomodations.new]) do |f| %>
Забудь это.
Кто-нибудь может помочь. Любые подсказки, где я мог бы начать копать?
Заранее спасибо!