我期待更好地理解活动模型/记录关系以及如何根据属性所在的位置(模型)以及我调用它们的位置来调用属性。因此,例如,我可以从配方控制器内访问属性dish_name像这样从不同的关联模型导轨访问属性3
def all_recipes
@recipes = Recipe.all
end
在视图
<% @recipes.each do |r| %>
<%= r.dish_name %>
<% end %>
现在说,我想从我的控制器称为worldrecipes,我中访问配方属性刚刚写了一个方法,将所有食谱返回到同一个国家。一个国家有许多食谱的关系
所以我的方法是
def self.top_countries
joins(:recipes).
select('countries.*, count(*) AS recipes_count').
group('countries.id').
order('recipes_count DESC')
end
我控制器
@worldrecipes = Country.where(:name => params[:name])
,并查看
<% @worldrecipes.each do |r| %>
<%= r.name %>
<% end %>
所以访问该国的name属性是很容易的它在国家模式和那里我的查询结果是从(我认为)返回...我的问题是如何访问从我的食谱模型dish_name属性是链接到国家名称
希望是有道理的,没有任何人有如何来解决这一问题或这个
感谢一些金科玉律指南你
'@worldrecipes = Country.where(:name => params [:name])'给你的国家记录的名称是'params [:name]'还是该国家的食谱数组? –
它给我的记录名称为params [:name],因为在我看来,我在页面上打印出“意大利”一词,这不完全正确,因为有2条记录与意大利,只有一条正在显示 – Richlewis