当我在我的视图中放置@user.dreams
时,我得到:
[#Dream id:3,内容:“我的梦想”,user_id:2,created_at:“2011-10-06 21:58:50”,updated_at:“2011-10-06 21:58:50” >]
现在我想打印出来的内容:来自这一行的数据。但是当我把:
@user.dreams.content
或@user.content
我收到“未定义的方法`内容”错误。
@user.id
正确打印出“2”。
如何从这一行打印出“我的梦想”内容?
答案 0 :(得分:1)
dreams
调用返回ActiveRecord::Relation
对象,因为它是对象的集合。如果你想要所有梦想的所有内容,你将不得不像对待数组一样对待它:
@user.dreams.map(&:content)
此外,@user.content
无效,因为content
是Dream
对象的属性,而不是User
对象。
答案 1 :(得分:1)
如果梦是一个用户关联,那么你需要做
@user.dreams.first.content
或迭代@ user.dreams
例如
<% @user.dreams.each do |dream| %>
<%= dream.content %>
<% end %>