Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][Laravel]eloquent i powiązania modeli
Forum PHP.pl > Forum > Przedszkole
snerf
Witam
Może przejdę do porblemu.

baza:
-products
-categories

model
-category
  1. <?php
  2. protected $fillable = [
  3. 'name',
  4. 'img'
  5. ];
  6. public function products(){
  7. return $this->belongsToMany('App\Product');
  8. }
  9. ?>

-product
  1. protected $fillable = [
  2. 'category_id',
  3. 'product_number',
  4. 'img'
  5. ];
  6. public function categories(){
  7. return $this->belongsToMany('App\Category');
  8. }


controller category
  1.  
  2. @foreach($category as $article)
  3. {{ $article->name }} // DZIAŁA
  4. <ul>
  5. @foreach($article->products as $tag) // ZWRACA BŁĄD
  6. <li>{{ $tag->id }}</li>
  7. @endforeach
  8. </ul>
  9. @endforeach


błąd:
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'lavarel.category_product' doesn't exist (SQL: select `products`.*, `category_product`.`category_id` as `pivot_category_id`, `category_product`.`product_id` as `pivot_product_id` from `products` inner join `category_product` on `products`.`id` = `category_product`.`product_id` where `category_product`.`category_id` = 1)

Mógłby ktoś nakierować mnie na rozwiązanie tego problemu?
Pyton_000
U Ciebie jest potrzebna jeszcze jedna tabela bo masz relację ManyToMany
3 tabela to `category_product` z polami `category_id`, `product_id`

Chyba że masz 1 prod 1 kategroria to wtedy w Product zostawiasz, a w Category dajes hasMany
snerf
businesssmiley.png dzięki... nie spodziewałem się że to takie proste rozwiązanie, będę musiał jeszcze raz poczytać i zrozumieć co kiedy stosować..

<like> i pozdrawiam smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.