【发布时间】:2011-08-07 02:51:18
【问题描述】:
我在让 Devise 以我希望的单表继承方式工作时遇到问题。
我有两种不同类型的帐户,如下所示:
class Account < ActiveRecord::Base
devise :database_authenticatable, :registerable
end
class User < Account
end
class Company < Account
end
我有以下路线:
devise_for :account, :user, :company
用户在/user/sign_up注册,公司在/company/sign_up注册。所有用户都使用/account/sign_in 的单一表单登录(Account 是父类)。
但是,通过此表单登录似乎只能在 Account 范围内对它们进行身份验证。对 /user/edit 或 /company/edit 等操作的后续请求会将用户定向到相应范围的登录屏幕。
如何让 Devise 识别帐户“类型”并在相关范围内对其进行身份验证?
非常感谢任何建议。
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 devise single-table-inheritance