我发现很难对这个问题进行标题。如果你看到这种情况会更容易:
在我看来
<% @scrapbook.scrapbook_entries.each do |d|%>
<%= d.recipe_id %>
<% end %>
我获得了scrapbook_entries数据库表中的食谱ID列表(其中3个)。
358 358 341
我想要做的是使用这些ID并在食谱表中搜索与其相关的所有信息。
E.g. Display @recipe.name with ID 358.
在视图中有一种简单的方法吗?如果我没有意义,请告诉我
答案 0 :(得分:1)
试试这个:
<% @scrapbook.scrapbook_entries.each do |d|%>
<%= d.recipe_id %>
<%= d.recipe ? d.recipe.name : '' %>
<% end %>
答案 1 :(得分:1)
如果我理解你,你可以立即提出类似
的内容= d.recipe.name
在幕后,这将使用你的食谱id来查找正确的记录,然后取这个记录的名称
答案 2 :(得分:1)
如果您在ScrapbookEntry
模型上定义了关系,则可以获取配方实例并访问其任何属性。
class ScrapbookEntry < ActiveRecord::Base
belongs_to :recipe
end
<% @scrapbook.scrapbook_entries.each do |d|%>
<%= d.recipe.name %>
<% end %>
答案 3 :(得分:1)
您可以在scrabook_entry
中添加委托delegate :name, :to => :recipe
比你的观点
d.name