2011-02-01 25 views
4

我想我需要在Rails中使用STI。Rails STI和「類型」字符串的設置

這裏是我的類:

class Person < ActiveRecord::Base 
end 

class Landlord < Person 
end 

和人民表中有一個:type列,這是一個字符串。

所以,我期望在表格中看到,每一行是一個人的類型設置爲「人」,每個房東的類型設置爲「房東」。但是,這不是我所看到的。每個房東的類型都設置爲「房東」,但所有人的類型都設置爲零。這很好,可能是鐵軌的工作方式,但我只是在尋找一些確認。

回答

11

這確實是STI的工作原理。基類在數據庫中的類型爲NULL(或者在Ruby中爲零)。

+0

非常感謝。 – TheDelChop 2011-02-01 02:19:43

5

你可以解決這個如果你想通過添加type列的默認值"Person"