【備忘録】アソシエーションで関連付けしたオブジェクトの初期化
モデルで関連付けしたオブジェクトをコントローラで初期化します。
初期化とは、最初の状態を整えること。ここではオブジェクトの作成のことです。
まず、Userモデルを親、Postモデルを子として関連付けします。
user.rb
has_many :posts
post.rb
belongs_to :user
posts_controller.rb
@post = current_user.posts.build(post_params)
・current_userはsorceryのメソッドでログイン中のユーザーの値が入っています
・postsは、モデルで設定されているhas_many :postsによって使えるようになったメソッド。userオブジェクトで使えます
・アソシエーションでオブジェクトを初期化するときはbuildを使います。挙動はnewと同じですが、関連付けされていることが視覚的にわかるようになります。