0

我们有一个简单的网站模型与单表继承sites(id, type, title, address)其中类型可以是“家”或“办公室”。当我们在Rails 2.3.5上时,我们可以做Site.last.title,它会给出标题。但是,在Rails 3.2.6上,当我们做Site.last.title时,它给我们的值就是类型列。如何获得表的标题时,表有类型列

是否可以获得标题的值而不是类型?

回答

0

如果您正在尝试获取表格的最新值,最好通过created_at列找到它。默认情况下,使用Site.last,Rails将通过主键(ID)进行搜索,这在大多数情况下都是正确的。但是,如果由于某种原因需要在现有记录上更改ID,则SQL不会返回您的预期结果。

所以,最好是做这样的事情:

Site.order("created_at").last.title 

关于你所面临的问题,我认为这个问题是关系到type而不是title。无论如何,我建议您在您的控制器中设置最新的site,然后在您的视图中调用它。

#controller 
@site=Site.order("created_at").last 

#view 
@site.title 

我希望它可以帮助...

相关问题