我正在尝试使用rails
检索用户名以插入博客文章的评论中如果我使用
<%= comment.user_id %>"
它会给我一个id但是如果我尝试检索用户然后调用它返回的名称nil class
<%= User.find_by_id(comment.user_id).name %>"
为什么这不起作用
如果我离开.name,它会在内存中返回一个空格。
#<User:000x00000182fe48>
答案 0 :(得分:5)
最有可能的是,动态查找器被id
弄糊涂了,并返回(Ruby)对象的id
(即object_id
)而不是记录的id
。
请尝试拨打User.find(comment.user_id).name
。或者,更好:comment.user.name
。
以上应该回答你的问题,但你真正想做的是:
在控制器中:
@user_name = @comment.user.name
在视图中:
<%= @user_name %>