Files
F4ilji c7a779d9aa refactor(models): replace HasFactory with HasContainerFactory across all models
Add static $factory property for Porto-style model factory resolution
2026-09-18 01:39:22 +05:00

45 lines
1.1 KiB
PHP
Executable File

<?php
namespace App\Containers\Article\Models;
use App\Containers\Article\Enums\PostStatus;
use App\Containers\User\Models\User;
use App\Containers\Widget\Models\Slide;
use App\Ship\Traits\HasSeo;
use App\Ship\Traits\HasContainerFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\MorphOne;
use Spatie\Tags\HasTags;
class Post extends Model
{
use HasContainerFactory, HasTags, HasSeo;
protected static string $factory = \Database\Factories\PostFactory::class;
protected $guarded = false;
public function category() : BelongsTo
{
return $this->belongsTo(Category::class);
}
public function author() : BelongsTo
{
return $this->belongsTo(User::class, 'user_id');
}
public function slide(): MorphOne
{
return $this->morphOne(Slide::class, 'slidable');
}
protected $casts = [
'content' => 'array',
'authors' => 'array',
'status' => PostStatus::class,
'images' => 'array'
];
}