コメント機能を追加するときのポイント
私が作成しているアプリケーション「Yamashiru」を受けて気になった点や復習した方が今後の役に立つと思って作成しています。
さらにエンジニア初心者の方に向けて タメになる情報をお届けします。
今回は、、、
コメント機能を追加するときのポイント
今回のケースは投稿に対してコメント機能を加える際の注意点についてまとめました。
dependent: :destroy について
dependent: :destroyを追加することで、 親モデルを削除する際に、その親モデルに紐づく「子モデル」も一緒に削除できるようになります。 今回の私のケースですと親モデル=投稿機能、子モデル=コメント機能になります。よって投稿が削除されると コメントも削除されるということになります。
tweetモデル
class Tweet < ApplicationRecord <中略> has_many :comments, dependent: :destroy
commentモデル
class Comment < ApplicationRecord <中略> belongs_to :tweet
その際にルーティングもネストされているか確認します。
routes.rb
resources :tweets do resources :comments, only: :create end
いかがでしたでしょうか? 1個ずつ落ち着いて実施出来れば簡単な操作になりますので是非ご活用下さい!