繁体   English   中英

ActiveRecord :: StatementInvalid(PG ::错误:错误:列不存在

[英]ActiveRecord::StatementInvalid (PG::Error: ERROR: column does not exist

在使用find语句构造的表上部署到heroku时遇到问题。 当使用本地服务器时它们运行得很好但是没有在heroku上运行我得到'抱歉,但出了点问题'错误。 我遇到了一些其他线程,暗示它可能是postgresql中的区分大小写的问题,而不是我对它了解很多,但我尝试确保大写一致并且它似乎没有什么区别。

Heroku Logs

2012-08-14T00:31:30+00:00 app[web.1]: Processing by ApartmentsController#aptMenu as HTML
2012-08-14T00:31:30+00:00 app[web.1]: Completed 500 Internal Server Error in 4ms
2012-08-14T00:31:30+00:00 app[web.1]: 
2012-08-14T00:31:30+00:00 app[web.1]: LINE 1: SELECT "apartments".* FROM "apartments"  WHERE (bed = 0)
2012-08-14T00:31:30+00:00 app[web.1]: ActiveRecord::StatementInvalid (PG::Error: ERROR:  column "bed" does not exist

调节器

def aptMenu
  @apartments = Apartment.all
  @studio = Apartment.find(:all, :conditions => ["bed = 0"])

架构

create_table "apartments", :force => true do |t|
t.integer  "bed"

我非常困惑这种看法,因为根据我可以看到的所有东西,“床”栏确实存在。 任何帮助将非常感激。

出现此问题的原因是生产数据库上的公寓表缺少列床。 您需要在生产方面进行迁移。

heroku rake db:migrate

查看新列是否出现。

确保你也重启你的heroku。

heroku restart

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM