これは私が定期的に遭遇する問題であり、その理由はよくわかりません。感謝する提案:
ショップと本の関係があるとします(本はショップに属し、ショップには本がたくさんあります)
次のコードを実行した場合:
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コントローラーのテストで問題が発生しています。
何か案は?私はこれにかなり頻繁に遭遇するようですが、再:解決策に困惑しています