undefined метод `активирован? ' - PullRequest
       0

undefined метод `активирован? '

2 голосов
/ 08 февраля 2011

Я пытаюсь внедрить Authlogic в Rails 3, и у меня только что болит голова за головкой ... Я очень плохо знаком с рельсами, поэтому, пожалуйста, прости меня за то, что я не эксперт.Я следил за Railscast на предмет, который был действительно полезен, но как только я отправляю свою форму создания нового пользователя через фактический веб-сайт, я получаю это:

undefined method `activated?'

app/controllers/users_controller.rb:37:in `create'

Любая помощь будет НАСТОЛЬКО оцененасегодня вечером у меня болела голова ...

Код из метода создания:

  def create
    @user = User.new(params[:user])
    if @user.save
      flash[:notice] = "Registration successful."
    else
      render :action => 'new'
    end
  end

Ответы [ 2 ]

5 голосов
/ 08 февраля 2011

Если кто-то еще столкнется с этой проблемой - восстановите модель user_session и заполните ее:

class UserSession < Authlogic::Session::Base 
  def to_key 
    new_record? ? nil : [ self.send(self.class.primary_key) ] 
  end 
end

Это исправило это для меня ... кажется, что эта модель, по крайней мере, содержит ошибку, так что вернемся к основам!

2 голосов
/ 17 апреля 2011

Проблема для меня заключалась в существовании таблицы user_sessions. Если вы создали модель UserSession с помощью генератора, у вас есть миграция, которая создает эту таблицу.

Простое удаление таблицы (как в тестовой базе данных, так и в базе данных разработки) и файла миграции решило проблему для меня.

Приветствия

- Хосе

...