Files
backend-mm/app/Models/Ecommerce/Product/Property/ProductProperty.php
2025-09-25 03:03:31 +05:00

66 lines
1.3 KiB
PHP

<?php
namespace App\Models\Ecommerce\Product\Property;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany;
class ProductProperty extends Model
{
use HasFactory;
/**
* The table associated with the model.
*
* @var string
*/
protected $table = 'product_attributes';
/**
* Indicates if the model should be timestamped.
*/
public $timestamps = false;
/**
* The attributes that are mass assignable.
*/
protected $fillable = [
'product_id',
'attribute_id',
];
/**
* The relations to eager load on every query.
*/
protected $with = [
'attribute',
'values',
];
/**
* Attribute
*/
public function attribute(): BelongsTo
{
return $this->belongsTo(Attribute::class, 'attribute_id');
}
/**
* Product
*/
public function product(): BelongsTo
{
return $this->belongsTo(Product::class, 'product_id');
}
/**
* Property values
*/
public function values(): HasMany
{
return $this->hasMany(ProductAttributeValue::class, 'product_attribute_id');
}
}