0

我一直在关注 Ryan Bates 在 CarrierWave 上的 Railscasts 教程,你可以在这里找到

一切正常,除了当我去查看我的个人资料时,它给了我这个错误:

undefined local variable or method `user'

我不知道为什么它告诉我这个,因为我正在使用 Devise 进行身份验证,这就是我的模型的名称。

以下是一些可能有用的文件:

https://gist.github.com/amarh21/7439421

我正在使用 Rails 4.0.1 和 ruby​​ 2.0.0

4

1 回答 1

0

您应该共享您的控制器。无论如何,我认为问题不在于 Carrierwave。看起来问题是您没有正确设置变量。在您的控制器中,您应该有一些东西:

def profile
  user = User.find(params[:id])
end

您必须使用实例变量,实例变量的名称以 @ 开头,并且其范围仅限于 self 所指的任何对象。因此,在控制器中替换user@user并查看:

def profile
  @user = User.find(params[:id])
end

<%= image_tag @user.profile_image_url %>
于 2013-11-12T23:11:03.780 回答