Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [CakePHP] Zaawansowane relacje na tabelkach
Forum PHP.pl > Forum > PHP > Frameworki
lukasz108min
Witam!

Mam problem z ustawieniem modelu do moich relacji w bazie danych :

Mam tabelke produkty która ma id_kategori i łączy się z tabelką kategorie ( relacja wiele do jednego )
Tabelka kategorie ma pole id_firmy i łączy się z tabelką firmy ( relacja wiele do jednego )

  1. public $belongsTo =
  2. array('kategorie' =>
  3. array('className'=>'kategorie'),
  4. 'firmy' =>
  5. array('className'=>'firmy',
  6. 'foreignKey'=>false,
  7. 'conditions'=> array('firmy.id'=>'kategorie.id_firmy'))
  8. );


wszystko jest niby ok ale w tabeli firmy zwraca nulle
Riggs
Pokaż zapytanie (to jak odczytujesz dane).
Recursive jak masz ustawione? Contain?
Poza tym ustawił bym relację kategoria - firma w modelu kategorii.
lukasz108min
  1. SELECT `product`.`id`, `product`.`name`, `product`.`description`, `product`.`image`, `product`.`promotion`, `product`.`types_id`, `product`.`categories_id`, `categories`.`id`, `categories`.`name`, `categories`.`companies_id`, `types`.`id`, `types`.`name`, `companies`.`id`, `companies`.`name` FROM `test`.`products` AS `product` LEFT JOIN `zoorex`.`categories` AS `categories` ON (`product`.`categories_id` = `categories`.`id`) LEFT JOIN `test`.`types` AS `types` ON (`product`.`types_id` = `types`.`id`) LEFT JOIN `test`.`companies` AS `companies` ON (`companies`.`id` = 'categories.companies_id') WHERE 1 = 1


a containable i recursive jest domyślne
activestate
Jakbyś podał kod funkcji find() którą wybierasz dane byłoby dobrze.
lukasz108min
find('all');
Riggs
Pokaż model kategorii i produktów bo bez tego to wróżenie z fusów. Do tego struktura tabel w bazie. Coś musi być źle ustawione.
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.