Надеюсь, заголовок, смесь кода и английского языка sh, достаточно ясен.
Я нашел очень мало документации об этой ситуации в моих поисках в Интернете ... Кажется, даже официальные рельсы Руководство по API и do c не покрывают form_for моделью, принадлежащей другой.
Я новичок в RoR, и это весело! Я работаю с отношениями и пытаюсь создать форму для создания нового «предмета» на «конкурсе». Проблема в том, что он выходит совершенно пустым, без HTML отрисовки внутри тегов тела, где должна быть форма.
Вот мой route.rb
resources :contests do
resources :items do
resources :votes
end
end
Мой предмет # новый
def new
@contest = Contest.find params[:contest_id]
@item = Item.new
end
Мой новый. html .erb
<%= render 'form', item: @item %>
И моя форма_для
<% form_for @item, url: {action: "create"} do |f| %>
<div class="field">
<%= f.label :name %>
<%= f.text_field :name %>
</div>
<div class="field">
<%= f.label :notes %>
<%= f.text_area :notes %>
</div>
<% end %>
Также вот отображение маршрута
contest_item_votes_path GET /contests/:contest_id/items/:item_id/votes(.:format)
votes#index
POST /contests/:contest_id/items/:item_id/votes(.:format)
votes#create
new_contest_item_vote_path GET /contests/:contest_id/items/:item_id/votes/new(.:format)
votes#new
edit_contest_item_vote_path GET /contests/:contest_id/items/:item_id/votes/:id/edit(.:format)
votes#edit
contest_item_vote_path GET /contests/:contest_id/items/:item_id/votes/:id(.:format)
votes#show
PATCH /contests/:contest_id/items/:item_id/votes/:id(.:format)
votes#update
PUT /contests/:contest_id/items/:item_id/votes/:id(.:format)
votes#update
DELETE /contests/:contest_id/items/:item_id/votes/:id(.:format)
votes#destroy
contest_items_path GET /contests/:contest_id/items(.:format)
items#index
POST /contests/:contest_id/items(.:format)
items#create
new_contest_item_path GET /contests/:contest_id/items/new(.:format)
items#new
edit_contest_item_path GET /contests/:contest_id/items/:id/edit(.:format)
items#edit
contest_item_path GET /contests/:contest_id/items/:id(.:format)
items#show
PATCH /contests/:contest_id/items/:id(.:format)
items#update
PUT /contests/:contest_id/items/:id(.:format)
items#update
DELETE /contests/:contest_id/items/:id(.:format)
items#destroy