Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/52.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 列出视图中ID为的数据库项_Ruby On Rails_Ruby_View_Each - Fatal编程技术网

Ruby on rails 列出视图中ID为的数据库项

Ruby on rails 列出视图中ID为的数据库项,ruby-on-rails,ruby,view,each,Ruby On Rails,Ruby,View,Each,我发现很难给这个问题命名。如果您看到以下情况,就会更容易: 在我看来 <% @scrapbook.scrapbook_entries.each do |d|%> <%= d.recipe_id %> <% end %> 我想做的是使用这些ID并在配方表中搜索与它们链接的所有信息 E.g. Display @recipe.name with ID 358. 在视图中是否有一种简单的方法来执行此操作?如果我说不通,请告诉我,试试以下方法: <%

我发现很难给这个问题命名。如果您看到以下情况,就会更容易:

在我看来

<% @scrapbook.scrapbook_entries.each do |d|%>

  <%= d.recipe_id %>

<% end %>
我想做的是使用这些ID并在配方表中搜索与它们链接的所有信息

E.g. Display @recipe.name with ID 358. 
在视图中是否有一种简单的方法来执行此操作?如果我说不通,请告诉我,试试以下方法:

<% @scrapbook.scrapbook_entries.each do |d|%>

  <%= d.recipe_id %>
  <%= d.recipe ? d.recipe.name : '' %>

<% end %>

试试这个:

<% @scrapbook.scrapbook_entries.each do |d|%>

  <%= d.recipe_id %>
  <%= d.recipe ? d.recipe.name : '' %>

<% end %>

如果我理解你的意思,你可以立即

= d.recipe.name

在幕后,这将使用您的配方id查找正确的记录,然后将此记录的名称添加到属性中

如果我理解您的意思,您可以立即添加以下内容

= d.recipe.name

在幕后,这将使用您的配方id查找正确的记录,然后获取该记录属性的名称

如果您在
剪贴簿条目
模型上定义了关系,则可以获取配方实例并访问其任何属性

class ScrapbookEntry < ActiveRecord::Base

 belongs_to :recipe

end 

如果在
剪贴簿条目
模型上定义了关系,则可以获取配方实例并访问其任何属性

class ScrapbookEntry < ActiveRecord::Base

 belongs_to :recipe

end 

您可以在ScrapBook\u条目中添加代理

delegate :name, :to => :recipe
比你认为的要好

d.name

您可以在ScrapBook\u条目中添加代理

delegate :name, :to => :recipe
比你认为的要好

d.name

查看rails中使用的代理如何感谢@NitinJ的信息查看rails中使用的代理如何感谢@NitinJ的信息