Rails 3.2.13、Ruby 2.0.0p-p247、および Spree 2.0.3 を使用しています。
Railsコンソールまたは実際のアプリでactiverecordを使用して実行すると、次のようにSpree::Product.select(:permalink).first
なります。#<Spree::Product permalink: nil>
ただし、実行するSpree::Product.first.permalink
と"test"
、予想されるパーマリンクが表示されます。さらに、Spree::Product.first
製品のアクティブレコード関係全体を返します。
Spree::Product.create(name: "test", price: "100")
実行してみるとRAILS_ENV=development rails c
、期待どおりに動作します。で試してみるとRAILS_ENV=test rails c
、SQL ロールバックとNoMethodError: undefined method '[]' for nil:NilClass
.
これがテスト環境でのみ発生する理由は何ですか?