【发布时间】:2011-08-26 03:49:49
【问题描述】:
有关一些背景,请参阅我的问题:Rails app using STI -- easiest way to pull these records?
我有一些模型使用第三个连接表(通过 RecItem 连接的配方和成分)通过关系与 has_many 连接。
所以上一个问题的人帮助我按类型对食谱的成分进行分组 - 这正是我想要的。但是,现在我访问的是@recipe.ingredients 而不是@recipe.rec_items,我无法返回存储在rec_items 连接表中的数据(比如配料量、烹饪时间等内容...... )
在使用 group_by 之前,我像这样迭代每个食谱的 rec_items:
<% @recipe.rec_items.each do |rec_item| %>
<%= rec_item.ingredient.name %><br />
<%= rec_item.amount %><br />
<% end -%>
现在我正在对@recipe.ingredients 进行分组,我该如何跟进与此食谱相关的rec_items? (如果我这样做,它会为我提供所有食谱的 rec_items ......再次,我可以用笨拙的语句来做到这一点,例如:
ingredient.rec_items.find_by_recipe_id(@recipe.id).amount
但这似乎是错误的......)有没有一种简单的方法来实现这些目标? (获取特定配方成分的列表,按 :type 排序/分组,同时仍然能够访问 rec_items 中每个配方/成分配对的附加信息?)
谢谢!
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 has-many-through