40 lines
861 B
PHP
40 lines
861 B
PHP
<?php
|
|
|
|
namespace App\Models;
|
|
|
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
|
use Illuminate\Database\Eloquent\Model;
|
|
use Illuminate\Database\Eloquent\SoftDeletes;
|
|
|
|
class Comment extends Model
|
|
{
|
|
use HasFactory, SoftDeletes;
|
|
|
|
protected $fillable = ['disease_id', 'user_id', 'content', 'parent_id', 'status'];
|
|
|
|
public function disease()
|
|
{
|
|
return $this->belongsTo(Disease::class);
|
|
}
|
|
|
|
public function user()
|
|
{
|
|
return $this->belongsTo(User::class);
|
|
}
|
|
|
|
public function replies()
|
|
{
|
|
return $this->hasMany(Comment::class, 'parent_id');
|
|
}
|
|
|
|
public function parent()
|
|
{
|
|
return $this->belongsTo(Comment::class, 'parent_id');
|
|
}
|
|
|
|
public function getContentWithPlaceholderAttribute()
|
|
{
|
|
return $this->status === 'deleted' ? 'Deleted Comment' : $this->content;
|
|
}
|
|
}
|