我们有一个带有单表继承的简单站点模型,sites(id, type, title, address)
其中类型可以是“家庭”或“办公室”。当我们在 Rails 2.3.5 上时,我们可以做Site.last.title
,它会给出标题。但是,在 Rails 3.2.6 上,当我们这样做时Site.last.title
,我们将值作为类型列代替。
是否可以获取标题的值而不是类型?
我们有一个带有单表继承的简单站点模型,sites(id, type, title, address)
其中类型可以是“家庭”或“办公室”。当我们在 Rails 2.3.5 上时,我们可以做Site.last.title
,它会给出标题。但是,在 Rails 3.2.6 上,当我们这样做时Site.last.title
,我们将值作为类型列代替。
是否可以获取标题的值而不是类型?
如果要获取表的最新值,最好按created_at
列查找。默认情况下,使用Site.last
,Rails 将通过主键 ( ID
) 进行搜索,这在大多数情况下都可以。但是,如果出于某种原因您需要更改ID
现有记录的 an,您的 SQL 将不会返回您期望的结果。
因此,最好执行以下操作:
Site.order("created_at").last.title
关于您面临的问题,我认为问题与.type
而不是title
. 无论如何,我建议你site
在你的控制器中设置最新的,然后在你的视图中调用它。
#controller
@site=Site.order("created_at").last
#view
@site.title
我希望它有帮助...