0

Ruby on Rails環境は初めてです。を使用して、データベースをデータとともにherokuに移行しましたseeds.rb。実行中のherokuサーバーTableName.allでは、heroku postgresに存在するすべてのデータが入力されます。次のようなコマンドを実行しようとすると

TableName.select("Distinct(Category)")

エラーが発生します

Column TableName.Category does not exist.

列を変更しようとしましたが、うまくいきませんでした。ここで何がうまくいかないのか教えてください。

前もって感謝します

編集

私の開発サーバーでは正常に動作しています。開発サイトに問題はありません。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" 
4

2 に答える 2

1

Heroku でデータベース テーブルを正しく設定していないようです。run のようなことをしましたheroku run db:migrateか?

調べてみませんか?試しましたheroku pg:psqlか?ここを参照してください。

また、SQLite を使用するべきではありません。これは同じデータベースではありません。また、SQL はデータベース全体で標準ではありません。ある時点で、非常に微妙なデータベースのバグに遭遇するでしょう。

于 2013-06-27T12:14:19.337 に答える