Rails + CarrierWave:NoMethodError:nil的未定义方法`image_url’:NilClass

我正在使用Devise和Carrierwave。 我用设计生成了用户然后创建了一个单独的用户控制器,此页面现在是(用户/搜索)

Carrierwave工作得非常好,并且在我的节目中显示图像(用户/ 1等)但是当我把东西移到新的“搜索”页面时,它已经坏了。

这是我视图中的代码..(注意,当我删除图像时视图有效,所以其他代码很好)

    

我已经尝试添加我的users_controller:

 def search @users = User.all end 

正如您在我的视图中可以通过代码判断的那样,我按性别过滤用户(我已经定义了@males和@females)您可以在下面的模型中看到。

 class User  { where gender: 'male' } scope :female, -> { where gender: 'female' } 

我已经尝试将:image_url添加到attr_accessible和mount_uploader并且它不起作用,但我知道这不会是问题,因为我说它在节目中工作正常。

有任何想法吗 ??

注意:我已经在这里检查了所有相关问题,但仍然无法找到有助于我的解决方案。 非常感谢

 <% @males.each do |user| %> <%= image_tag @user.image_url(:thumb).to_s %> <%= user.firstname %> <% end %> 

我想你有一个额外的@符号。 尝试<%= image_tag user.image_url(:thumb).to_s %>