Ruby on Rails アプリケーションの RSpec を使用していくつかのテストを書いていますが、理解できない問題に直面しています。他のオブジェクトに関連付けられているオブジェクトがたくさんあり、Factory Girl を使用してそれらすべてを作成しています。私が問題を抱えている場所の例を次に示します。
user = Factory.create(:user)
package = Factory.build(:package, :user => user)
item = Factory.create(:item, :package => package)
すべてのパッケージはユーザーに属しているため、最初の依存関係はかなり簡単です。ユーザーを作成し、それをパッケージに関連付けます。問題ありません。ここで問題です。私のパッケージ モデルには、パッケージ内に少なくとも 1 つのアイテムがないと作成できないという検証があります。つまり、Factory.create を使用できないということです。これは、packages_controller.rb で @Package.new を実行するのとほとんど同じですが、これで問題ありません。その後、アイテムの作成に進みますが、問題は、パッケージがまだ ID を持っていないため、このアイテムをパッケージに関連付けることができないことです。
パッケージを作成し、アイテムを作成して保存し、パッケージに ID があれば、2 つを関連付けることはできますか?