решено: я использовал метод 'clear_helpers' в ApplicationController, поэтому он блокировал Devise для загрузки его помощников.
Здравствуйте,
Когда я запускаю свое приложение в первый раз наВ режиме «разработки», я получаю эту ошибку, когда я перезагружаю ошибку, исчезает.Когда я запускаю «производство», ошибка все равно возникает, потому что приложение загружает приложение только один раз (?), Так что же происходит?Кто-то может помочь?
Ошибка:
undefined method `user_signed_in?' for #<#<Class:0x10312ddc0>:0x103127100>
Extracted source (around line #16):
13:
14: #top
15: = link_to '', root_path, :id => 'logo'
16: - if user_signed_in?
17: #session
18: %p= raw "Olá <b>#{current_user.email}</b>"
19: #myaccount.button{:onclick => "javascript: document.location.href = '#{edit_user_registration_path}'"}
Я использую Devise со следующей настройкой:
Rails: 3.1, Devise: 1.3.4
Myмодель:
class User::Account < ActiveRecord::Base
devise :database_authenticatable, :confirmable, :lockable, :recoverable,
:rememberable, :registerable, :trackable, :timeoutable, :validatable,
:token_authenticatable
end
маршруты:
Foco::Application.routes.draw do
devise_for :users, :class_name => 'User::Account'
root :to => 'main/cockpit#index', :constraints => lambda {|r| r.env["warden"].authenticate? }
devise_scope :user do
root :to => "devise/registrations#new"
end
end
Мой контроллер:
class Main::CockpitController < ApplicationController
before_filter :authenticate_user!
def index
end
end
Спасибо!