User
has-many Post
has-many の3 つのモデルがありComment
ます。ユーザーを削除すると、関連するすべての投稿と、これらの投稿に関連するコメントが自動的に削除されます。これを達成するために、モデルUser
とPost
モデルに次のコードがあります。
// User
protected static function boot() {
parent::boot();
static::deleting(function($user) {
$user->posts()->delete();
});
}
// Post
protected static function boot() {
parent::boot();
static::deleting(function($post) {
$post->comments()->delete();
});
}
ユーザーを削除すると、そのユーザーの投稿はすべて削除されますが、コメントは保持されます。なぜこうなった?