34 lines
751 B
PHP
34 lines
751 B
PHP
|
|
<?php
|
||
|
|
|
||
|
|
namespace Modules\Core\Review\Models;
|
||
|
|
|
||
|
|
use Illuminate\Database\Eloquent\Model;
|
||
|
|
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||
|
|
use Lunar\Models\Product;
|
||
|
|
use Spatie\MediaLibrary\HasMedia;
|
||
|
|
use Spatie\MediaLibrary\InteractsWithMedia;
|
||
|
|
|
||
|
|
class ProductReview extends Model implements HasMedia
|
||
|
|
{
|
||
|
|
use InteractsWithMedia;
|
||
|
|
|
||
|
|
public const IMAGES_COLLECTION = 'review-images';
|
||
|
|
|
||
|
|
protected $guarded = [];
|
||
|
|
|
||
|
|
protected $casts = [
|
||
|
|
'reviewed_at' => 'datetime',
|
||
|
|
'replied_at' => 'datetime',
|
||
|
|
];
|
||
|
|
|
||
|
|
public function product(): BelongsTo
|
||
|
|
{
|
||
|
|
return $this->belongsTo(Product::class);
|
||
|
|
}
|
||
|
|
|
||
|
|
public function registerMediaCollections(): void
|
||
|
|
{
|
||
|
|
$this->addMediaCollection(self::IMAGES_COLLECTION);
|
||
|
|
}
|
||
|
|
}
|