Rails 4 - 如何在视图中显示关联内容的集合

时间:2016-06-08 01:02:52

标签: ruby-on-rails associations

我正试图弄清楚如何在我的视图中显示关联数据的集合。

我有用户,个人资料和评估模型。

协会是:

用户

has_one :profile
has_many :given_evaluations, foreign_key: :evaluator_id, dependent: :destroy, class_name: Evaluation
  has_many :received_evaluations, foreign_key: :evaluatee_id, dependent: :destroy, class_name: Evaluation

个人资料

belongs_to :user

评估

belongs_to :evaluator, foreign_key: :evaluator_id, class_name: User
  belongs_to :evaluatee, foreign_key: :evaluatee_id, class_name: User

在我的个人资料展示中,我正在尝试显示用户收到的评估。我认为以下是正确的,虽然它不起作用。

<% @profile.user.received_evaluations.each do | receval | %>
                        <ul class="testimonial-slider text-white text-center">
                            <li>
                                <div class="testimonial-content">
                                    <%= receval.remark %>
                                </div>

我可以在我的rails控制台中看到,该用户已收到1个评估:

 p.user.received_evaluations
     => #<ActiveRecord::Associations::CollectionProxy [#<Evaluation id: 4, evaluatee_id: 34, overall_score: nil, project_score: nil, personal_score: nil, remark: "testing", work_again?: nil, continue_project?: nil, created_at: "2016-06-03 08:15:04", updated_at: "2016-06-03 08:15:04", evaluator_id: nil>]> 

评估中的评论是“测试”。

当我尝试此操作时 - 配置文件视图呈现,但注释未显示。这只是一个空白的视图。

谁能看到我做错了什么?

我已经尝试了以下每个代码(没有html和样式),但在每种情况下,我得到一个“没有方法错误的备注”。我无法弄清楚错误信息的含义 - 评论不是一种方法。

<%= @profile.user.received_evaluations.first.try(:remark) %>
<%= @profile.user.received_evaluations.try(:remark) %>
<%= @profile.user.received_evaluations.remark %>

0 个答案:

没有答案