heroku控制台明显不起作用

时间:2013-06-26 14:34:05

标签: ruby-on-rails sqlite postgresql heroku

我是ruby on rails环境的新手。 我使用seeds.rb将数据库与数据一起迁移到heroku。在运行TableName.all的heroku服务器中填充heroku postgres中存在的所有数据。当我尝试运行像

这样的命令时
TableName.select("Distinct(Category)")

我收到错误

Column TableName.Category does not exist.

我尝试了changin专栏,但没有奏效。请告诉我这里出了什么问题。

提前致谢

修改

在我的开发服务器上它工作正常。开发站点没有问题。我在DEv网站上使用SQLite

修改**

以下是来自:

的续集文字
  #rails console
    >>Recall.all
    SELECT "recalls".* From "recalls"
    =>[#<Recall id:1, Category: "******",......>]
>>Recall.select("Distinct(Category)")
SELECT DISTINCT(Category) From recalls
=>[#<Recall Category: "Foods">,#<Recall Category: "Consumer Products">]




    #heroku run console
    >>Recall.all
    SELECT "recalls".* From "recalls"
    =><Recall id:1, Category: "******",......>

>>Recall.select("Distinct(Category)")
Recall Load <2.5ms> SELECT DISTINCT(Category) FROM "recalls" 
PGError: ERROR: column "category" does not exist
LINE 1:SELECT DISTINCT(Category) FROM "recalls" 
                       ^
:SELECT DISTINCT(Category) FROM "recalls" 
ActiveRecord::StatementInvalid: PGError: ERROR: column "category" does not exist
LINE 1:SELECT DISTINCT(Category) FROM "recalls" 
:SELECT DISTINCT(Category) FROM "recalls" 

2 个答案:

答案 0 :(得分:1)

您似乎没有在Heroku上正确设置数据库表。你做过像heroku run db:migrate这样的事吗?

你为什么不调查?你试过heroku pg:psql吗?见here

另外,你真的不应该使用SQLite - 它不是同一个数据库 - 并且SQL不是跨数据库的标准。在某些时候你会遇到一个非常微妙的数据库错误。

答案 1 :(得分:0)

我找到了答案。这是转义序列问题。 这是我如何修复

Recall.select("DISTINCT(\"Category\")")

参考这个问题 Rails and Heroku PGError: column does not exist