Rails + CarrierWave: NoMethodError: niezdefiniowana metoda `image_url 'dla nil: NilClass

Używam Devise i Carrierwave. Płeć użytkowników z devise następnie stworzyłem oddzielny kontroler użytkownika, gdzie ta strona jest teraz (użytkownicy / wyszukiwanie)

Carrierwave działał perfekcyjnie i wyświetlał obrazy w moim programie (użytkownicy / 1 itd.), Jednak kiedy przeniosłem rzeczy na nową stronę „wyszukiwania”, jej zepsuty.

Oto kod w moim widoku .. (uwaga: widok działa, gdy usuwam obraz, więc drugi kod jest w porządku)

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

Próbowałem dodać w moim user_controller:

def search
  @users = User.all
end

Jak możesz stwierdzić po kodzie w moim odczuciu, filtruję użytkowników według płci (którą zdefiniowałem @males i @females). Możesz to zobaczyć w moim modelu poniżej.

class User < ActiveRecord::Base

  devise :database_authenticatable, :registerable,
         :recoverable, :rememberable, :trackable, :validatable

  attr_accessible :email, :password, :password_confirmation, :remember_me, :username, :firstname, :lastname, :gender, :image, :remote_image_url, :image_cache, :remove_image

  mount_uploader :image, ImageUploader

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

Próbowałem dodać: image_url do attr_accessible i mount_uploader i nie zadziałało, ale wiem, że nie byłoby problemu, ponieważ powiedziałem, że działa dobrze w programie.

Jakieś pomysły ??

Uwaga: Sprawdziłem tutaj wszystkie powiązane pytania i nadal nie mogę znaleźć rozwiązania, które by mi pomogło. Dziękuję bardzo

questionAnswers(1)

yourAnswerToTheQuestion