belongsTo(User::class, 'user_id'); } public function likes(): HasMany { return $this->hasMany(PostLike::class); } public function comments(): HasMany { return $this->hasMany(PostComment::class)->with('author')->orderBy('created_at'); } public function isLikedBy(User $user): bool { return $this->likes()->where('user_id', $user->id)->exists(); } }