私は移行スクリプトの一部のデータを移行しようとしていますが、データが保存されていないようです。ただし、コードをコピーしてコンソールで直接実行すると、保存されます。なぜ誰かが私を助けることができますか?レール移行スクリプトVSコンソール
これはマイグレーションスクリプトのコードです。自分のテーブルから自分のアバターデータをプロファイルテーブルに移動しています。
私は移行スクリプトの一部のデータを移行しようとしていますが、データが保存されていないようです。ただし、コードをコピーしてコンソールで直接実行すると、保存されます。なぜ誰かが私を助けることができますか?レール移行スクリプトVSコンソール
これはマイグレーションスクリプトのコードです。自分のテーブルから自分のアバターデータをプロファイルテーブルに移動しています。
これは、列を変更して同じマイグレーションでそれらを使用しようとしているためだと思いますが、そのモデルはフィールドについて認識していません。場合の代わりに、このhttp://api.rubyonrails.org/classes/ActiveRecord/Base.html#method-c-reset_column_information
それはまさにそれでした!ありがとう!唯一の問題は、厄介な特集コラムです。 sqliteは 't'&' f'として保存しますが、その値をどのように保持するかはわかりません。私は '== true'、' == 't''、 ''もし特徴があるのか?' 'のチェックをしています。フードの下で何が起きているのか分かりませんが、私の例のように設定するだけで作業はできません。彼らは常にfalseを返します。 – brewster
@ brewster:例外が見つからない場合に備えて 'user.save!'を試してください。一般に、移行で例外を発生させることは良いことです。 'log/development.log'を見て、実行されているSQLを見ることもできます。 – zetetic
@ brewster - zeteticが述べているように、 'save! 'を使ってみてください。ユーザーが無効である可能性が高いため、移行中にその理由が表示されます。 –
について
もっとAvatar.all.each上記のこれらの行を追加し
てみ... 'a.feature == true'の場合、あなたは'使用することができます。フィーチャー? Railsは自動的に追加されますか?ブール値の属性の終わりまで –