我正在尝试在我的网络应用程序中使用link_to
:
<% if @statuses %>
<% @statuses.each do |status| %>
<div class="well">
<%= status.content %>
<br></br>
<% @profile_user = User.find(status.tag_list).first %>
<%= @profile_user%>
<%= link_to @profile_user.profile_name, user_profile_url(@profile_user) %>
<br></br>
<%= status.user.full_name %>
<hr />
<%= link_to time_ago_in_words(status.created_at), status_path(status) %> ago
</div>
<% end %>
<% end%>
这行代码会导致错误:
<%= link_to @profile_user.profile_name, user_profile_url(@profile_user) %>
我得到的错误是:
undefined method `profile_name' for nil:NilClass
但我的路线似乎正在发挥作用。路线应为:mywebsite.com/profile_name
。
我的当前代码出错了。如果我删除有问题的行,我可以手动输入我尝试访问的URL,页面将呈现没有问题。
答案 0 :(得分:0)
以下代码有点奇怪:
User.find(status.tag_list)
find方法将查找具有匹配id的用户,您确定状态对象上的方法tag_list将返回用户ID吗?