Merhaba,
E-ticaret sitesi yapıyorum ve ürünler için veritabanı hazırlıyorum.
Örnek kurduğum yapı;
Resim Örnek Yapı
Aslında tam anlamıylada kuramadım kafamda ki model yapısını ayarlayabileyim 🙂
- Ürünler
- id
- name
- description
- category_id
- Option
- id
- name
-Option Value
- id
- option_id
- name
- Variants
- id
- product_id
- option_id
- option_value_id
- price
- quantity
gibi yani variantlar üzerinden ürünlere erişmek istiyorum.
Ürünü eklerken
olabilir hepsinin stok adeti ve fiyatı farkı olabilir.
Yani eğer S ve M varsa sadece ben burada select içerisinde;
@if ($variant->option->name == 'Beden')
<div class="size mb-20">Size: <br>
<select name="chooseSize" id="chooseSize">
@foreach ($variant->variantOptions as $option)
<option value="{{ $variant->id }}">{{ $option->pivot->name }}</option>
@endforeach
</select>
</div>
@endif
şeklinde bir yapı kurmam lazım ve option value içerisine variant id'leri yazdırmam lazım ki tekrar yeni bir variant_id'ye göre ürünü çekip onun fiyatını gösterebileyim.
**variant_id** **product_id** **option_id** **option_value_id**
1 1 1 (Size) (1) Small
2 1 1 (Size) (2) Medium
bu şekilde de bir tablo oluşturdum fakat ilişkilendirmeyi neyi nasıl çağıracağımı yapamadım.
Örneğin bu siteyi incelerseniz her bir bedene göre variant_id'yi çekip yeniden sayfayı yüklüyor.
https://www.avocadostore.de/products/134013-living-crafts-t-shirt-2er-pack-living-crafts-1?variant_id=968141
Yardımcı olursanız en azından mantık ve ilişki açısından laravel'de çok sevineceğim.