Я хочу спросить о конкретной ситуации ..
У меня есть 3 модели:
Магазин
Цена
Товар
Мне нужно установить конкретную цену для магазина на конкретный товар ..
например:
если у меня есть продукт A, который стоит 100 $, я хочу установить его как 50 $ для магазина A, 80 $ для магазина B ... и т. д.
Я создал много-много отношений между Store иЦена
и я сохранил product_id в сводной таблице ...
как показано ниже
Store.php
<?php
namespace App\Modules\Store\Models;
use App\Modules\Store\Models\Price;
class Store extends Model
{
public function prices()
{
return $this->belongsToMany(Price::class,'store_prices');
}
}
Price.php
<?php
namespace App\Modules\Store\Models;
use App\Modules\Store\Models\Store;
use Illuminate\Database\Eloquent\Model;
class Price extends Model
{
protected $fillable = ['price'];
public function stores()
{
return $this->belongsToMany(Store::class, 'store_prices');
}
}
StorePrice.php
<?php
namespace App\Modules\Store\Models;
use App\Modules\Product\Models\Product;
use App\Modules\Store\Models\Price;
use App\Modules\Store\Models\Store;
use Illuminate\Database\Eloquent\Model;
class StorePrice extends Model
{
protected $fillable = ['store_id', 'price_id', 'product_id'];
protected $table = 'store_prices';
public function store()
{
return $this->belongsTo(Store::class, 'store_id');
}
public function price()
{
return $this->belongsTo(Price::class, 'price_id');
}
public function product()
{
return $this->belongsTo(Product::class, 'product_id');
}
}
это логически верно?
, если это так,Как я могу сгруппировать цену по продукту и показать соответствующие магазины?
В противном случае, я надеюсь, вы можете дать, возможно, лучшие предложения
Заранее спасибо