merb_auth_password_slice不维护会话

时间:2008-10-05 01:00:08

标签: ruby merb merb-auth

根据README集成merb_auth_password_slice,我可以在redirect_after_login被触发时成功登录,但session.authenticated?返回false。

现在尝试基本的身份验证策略(密码表单),似乎无法让它运行,任何想法?

我的初始文件:

require 'dm-validations'

dependencies "merb-more", "merb_helpers", "merb-slices", "merb_auth_password_slice"


Merb::BootLoader.before_app_loads do
  DataMapper.setup(:default, "sqlite3://config/dev.db")
end

Merb::BootLoader.after_app_loads do
    # have already done this
    # raise "You must specify a valid openid in Merb.root/config/open_id to use this example app" unless File.exists?(Merb.root / "config" / "open_id")
    # # DataMapper.auto_migrate!
    # User.create(:login => "admin", 
    #             :password => "password", :password_confirmation => "password", 
    #             :email => "admin@example.com", 
    #             :identity_url => File.read(Merb.root / "config" / "open_id"))
end

Merb::Config.use do |c|
  c[:session_secret_key]  = 'my key'
  c[:session_store] = 'cookie'
end

的setup.rb

class Authentication

  def store_user(user)
    return nil unless user
    user.id
  end

  def fetch_user(session_info)
    User.get(session_info)
  end

end # Authentication

1 个答案:

答案 0 :(得分:1)

  # before(nil, :only => [:update, :destroy]) { session.abandon! }

这是切片会话控制器的罪魁祸首