0

だった。のActiveRecord :: SerializationTypeMismatch:属性はハッシュすることになって、私はこれを持っているハッシュ取得する文字列

serialize :colors, Hash 

をしかし、私はそれがこの属性の結果は次のようになり、エラーを持っています:

これを表示するには、「serialize:colors、Hash」から「Hash」を取り出し、コンソールでエラーを表示します。起こったが、ハッシュは、文字列になってきたと私は「なぜを知らないように思える何

"--- !map:ActiveSupport::HashWithIndifferentAccess \none: \"#87466d\"\ntwo: \"#307065\"\nthree: \"#c04992\"\nfour: \"#ffffff\"\nfive: \"#636467\"\n" 

わかりません。私はこの問題を抱えていませんでしたが、私は今、このプロジェクトの2つのバージョンを持っています。最初はレール2にあり、もう1つはレール3にあり、2つの間で切り替わります。レール3に行ってからレール2に戻ってからエラーが発生したように感じます。このエラーをどのように修正できるのか、それがなぜ発生したのか誰にでも分かりますか?

私は同様のポストを見て、それが私を助けていない: "Attribute was supposed to be a Hash, but was a String"

答えて

0

OKので、私は、データベースに入ると、それはそれをクリアするようにNULLに属性を設定することで、それを修正。私はMySQLを使用しとして、私は次のようでした:

  • -p

    • オープンMySQLの

      のmysql -uルート-Dデータベース名値をリセットするためのMySQL内の属性を更新:

      をUPDATE colors_table SET colors = nullここで、id = 1;

    次に、エラーなしでレールコンソールの値を更新することができました。

  • 関連する問題