我已經在users
表中創建了單表繼承brokers
。 所以在控制檯,單表繼承,返回錯誤instance_of?
b = User.find 2
(其類型爲代理)
當我把它b.class
沒有返回User
模型,但模型Broker
。 這是STI的工作方式嗎?
我已經在users
表中創建了單表繼承brokers
。 所以在控制檯,單表繼承,返回錯誤instance_of?
b = User.find 2
(其類型爲代理)
當我把它b.class
沒有返回User
模型,但模型Broker
。 這是STI的工作方式嗎?
這是STI工作的方式。當你做User.find xxx
時,你可以找回User的任何子類的一個實例。
爲了補充說明,如果您使用Broker.find(2)並且ID 2的對象不是類型代理,則會給出記錄未找到的異常。 – 2012-01-13 14:51:26
好的。謝謝..但有人給我減去投票。你的極客們在我的追求中發現任何問題? – shajin 2012-01-13 16:00:23
那些給減投票,請說明原因。 :D – shajin 2012-01-13 14:47:18