undefined метод `активирован?'
Я пытаюсь внедрить 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 ответа
Если кто-то еще столкнется с этой проблемой - восстановите модель user_session и заполните ее:
class UserSession < Authlogic::Session::Base
def to_key
new_record? ? nil : [ self.send(self.class.primary_key) ]
end
end
Это исправило это для меня... кажется, что ошибка этой модели, по крайней мере, так что вернемся к основам!
Для меня проблемой было существование таблицы user_sessions. Если вы создали модель UserSession с помощью генератора, у вас есть миграция, которая создает эту таблицу.
Простое удаление таблицы (как в тестовой базе данных, так и в базе данных разработки) и файла миграции решило проблему для меня.
Ура,
- Хосе