循环并显示模型的相关数据

时间:2011-05-11 17:35:00

标签: ruby-on-rails

循环遍历一组记录,并希望同时显示模型的关联数据。 但是,在尝试显示关联数据时,收到错误消息

有谁能告诉我以下代码有什么问题?

<% @subs.each do |submission| %>
    <%= submission.SUB_OID %>
    <%= submission.SUB_ASSAY_TYPE %>
    <%= submission.author.AUT_NAME %> -- am getting the error because of this line

<% end %>

型号: Sub has_one作者 作者belongs_to Sub

如果我删除此行<%= submission.author.AUT_NAME %>,则提交的列表会正确显示,但是当我包含第3行时,我会收到错误“为AUT_NAME取消定义方法”。

我不明白发现错误的位置。

是新手,如果有任何建议,我将不胜感激

2 个答案:

答案 0 :(得分:1)

您的author没有名为AUT_NAME的字段/方法或您的关系错误。您可以查看submission.author是否为零并确保AUT_NAME存在吗?

答案 1 :(得分:0)

终于找到了解决方案。我包括以下条件 -

&lt;%if submission.author%&gt; &lt;%= submission.author.AUT_NAME%&gt; &lt;%end%&gt;

无法显示作者姓名的原因是因为并非所有提交都在authors表中都有关联的条目。