首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Rails3中的"_user.html.erb“获取未定义的方法错误

从Rails3中的"_user.html.erb“获取未定义的方法错误
EN

Stack Overflow用户
提问于 2013-04-18 11:01:54
回答 2查看 264关注 0票数 0

如果我收到这个错误

在尝试在_user.html.erb中使用这一行之后的undefined method impressionist_count' for nil:NilClass

代码语言:javascript
复制
<%= @user.impressionist_count+@user.microposts.sum(&:impressionist_count) %>

它需要在哪里定义?我已经在user.rb里面有这个了

代码语言:javascript
复制
def impressionist_count
    impressions.size
  end

我试过各种帮手,但都无济于事

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-04-18 12:06:02

当您“呈现@users”时,每个用户都可以作为局部变量" user“被局部变量访问。你的部分应该是这样的:

代码语言:javascript
复制
<%= user.impressionist_count+user.microposts.sum(&:impressionist_count) %>
票数 1
EN

Stack Overflow用户

发布于 2013-04-18 11:04:38

该方法已定义,但@user对象尚未定义。这应该在控制器中分配,以便它在视图中工作,或者在渲染部分时应该为它提供一个对象。

也许你有类似这样的东西:

代码语言:javascript
复制
<%= render(:partial => 'user') %>

如果你有一个user变量,你可能需要这样做:

代码语言:javascript
复制
<%= render(:partial => 'user', :object => user) %>

包括短语"for nil“在内的错误表示未正确使用未定义的值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16073786

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档