我有一個問題得到Devise工作的方式,我想單表繼承。Rails:使用設計單表繼承
我安排兩個不同類型的帳戶如下:
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
等操作的請求將用戶引導至相應作用域的登錄屏幕。
我該如何設計識別帳戶'類型'並驗證它們的相關範圍?
任何建議非常感謝。
我用這個,我得到了錯誤NoMethodError(未定義的方法'類型'...在行sign_in(resource.type ...我需要做什麼來改變這個? – Kevin 2014-10-08 00:20:02
我猜只是做一個字符串列在帳戶名稱類型?並將其設置爲模型名稱? – Kevin 2014-10-08 01:37:29
這也是我的猜測。ActiveRecord STI期望。 – 2014-12-08 18:05:34