我刚刚更新了两个模型中的两个列名,(Countries
& Regions
),现在在查看另一个模型Roasts
的页面时,我突然得到一个NoMethodError 。我无法弄清楚我做了什么。我刚刚回滚了两次迁移,正如我所怀疑的那样,这还没有解决问题。 Roasts
has_many :countries
和Countries
has_many :regions
之间存在关系。我有一个嵌套的表单来添加烤架上的国家和地区#new form。
无法发现我搞砸了什么。
roasts_controller.rb
class RoastsController < ApplicationController
has_many :countries
accepts_nested_attributes_for :countries
def index
@q = Roast.ransack(params[:q])
@roastsalpha = @q.result.order(:name)
@roastcount = Roast.count(:country)
@roasts = Roast.all
end
烤/ index.html.erb
<% @roasts.each do |roast| %>
<div class="card">
<div class="card-block">
<div class="media">
<div class="media-body">
<%= link_to roast_path(roast) do %> <h3 class="mt-0"><%= roast.name %></h3><% end %>
by <%= roast.roaster %><br />
<hr />
<i class="fa fa-filter" aria-hidden="true"></i> - <%= roast.bestfor %><br />
<i class="fa fa-tint" aria-hidden="true"></i> - <%= roast.roast %><br />
<i class="fa fa-sticky-note-o" aria-hidden="true"></i> - <%= roast.tastingnotes %><br />
<hr />
<p><small>Added on - <%= roast.created_at.strftime("%e %B %Y") %></small></p>
</div>
</div>
</div>
</div>
<br />
<% end %>
答案 0 :(得分:1)
这些行需要进入你的Roast
模型,而不是你的控制器:
has_many :countries
accepts_nested_attributes_for :countries