我的 Rails 应用程序中有 3 个控制器/模型:辣椒事件链接
辣椒模型
has_many :events
事件模型
belongs_to :pepper
has_many :links
链接模型
belongs_to :event
路由文件
Peps::Application.routes.draw do
resources :events do
resources :links
end
resources :peppers do
resources :events
end
resources :links
resources :events
resources :peppers
end
看法
<p id="notice"><%= notice %></p>
<%= form_for([@pepper, @pepper.events.build]) do |f| %>
<p>Titolo : <%= f.text_field :title %></p>
<p>Note: <%= f.text_area :note %></p>
<p><%= f.submit "Aggiungi evento" %></p>
<% end %>
<p>
<b>Title:</b>
<%= @pepper.title %>
</p>
<p>
<b>Note:</b>
<%= @pepper.note %>
</p>
<hr>
<% for event in @events %>
<h3><%= event.title %></h3>
<p><%= event.note %></p>
<ul>
<% for link in event.links %>
<li><%= link.url %></li>
<% end %>
</ul>
<%= link_to 'Cancella evento', link, confirm: 'Are you sure?', method: :delete %>
<% end %>
<%= link_to 'Edit', edit_pepper_path(@pepper) %> |
<%= link_to 'Back', peppers_path %>
这个视图工作得很好,没有出现错误。
<ul>
但是如果我在元素之后添加这个表单
<%= form_for([event, event.links.build]) do |f| %>
<p><%= f.text_field :url %></p>
<p><%= f.submit "Aggiungi link" %></p>
<% end %>
我收到这个错误
No route matches {:controller=>"links", :format=>nil, :event_id=>#<Event id: nil, title: nil, note: nil, created_at: nil, updated_at: nil, pepper_id: 4>}
这个错误是为了什么?