2011-10-30 9 views
2

私はHerokuのにdb:pushをやろうとしているが、このエラーが取得しています:PGError:ERROR:「is_required」欄には、boolean型であるが、式が整数型である

!!! Caught Server Exception 
HTTP CODE: 500 
Taps Server Error: PGError: ERROR: column "is_required" is of type boolean but expression is of type integer 
LINE 1: ..." ("id", "question_id", "text", "response_class", "is_requir... 
                  ^
HINT: You will need to rewrite or cast the expression. 

私から押してるの私のローカルデータベース(sqlite)をHerokuのPostgreSQLデータベースに追加します。

is_required列は、t.boolean "is_required", :default => falseを使用してブール値として設定されます。

ここで何をすべきかわかりません。

+0

SQLiteは、booleanデータを0と1に制限された整数として格納します。PostgreSQLでは、booleanは別のデータ型です。明示的にPostgreSQLで以下のように動作します: 'is_required :: boolean'。 –

+0

スキーマまたはデータからエラーが発生していますか? –

+1

データから来て、ブール値のデータが "0"と "1"として格納されています – Shpigford

答えて

1

pgAdminで再生する。 postgresは't'または'f'の形式でデフォルトを好むようです。私はそれを試してみるためにルビーをインストールしていません。

関連する問題