0

これは私が定期的に遭遇する問題であり、その理由はよくわかりません。感謝する提案:

ショップと本の関係があるとします(本はショップに属し、ショップには本がたくさんあります)

次のコードを実行した場合:

shop = Shop.first
Book.new(:name => 'Naked People', :shop => shop)

取得します

ActiveRecord :: AssociationTypeMismatch:Shop(#70161677495100)が期待され、String(#70161654862280)を取得しました

しかし、私が実行した場合

shop = Shop.first
Book.new(:name => 'Naked People', :shop_id => shop.id)

すべてが正常に動作します。

他のもの:

  • attr_accessibleの問題ではないと思います。両方のモデルからattr_accessible呼び出しを取り除いてみました...変更なし
  • 協会の問題ではないと思います。コンソールから、Book.new(:name =>'Naked People'、:shop => shop)を問題なく作成できます。現時点では、rspecコントローラーのテストで問題が発生しています。

何か案は?私はこれにかなり頻繁に遭遇するようですが、再:解決策に困惑しています

4

0 に答える 0