Я создаю сайт каталога одежды с CakePHP.У меня есть две модели: Store
и Brand
.Brand
настроен как hasAndBelongsToMany
, так как в магазине может быть много брендов, связанных с ним, но очевидно, что бренд может относиться ко многим магазинам.
У меня есть StoresController
, выбирающие магазины как следует, но у меня проблемы с получением списка брендов в моем BrandsController
.Если я установлю для моей модели Brand
отношения hasAndBelongsToMany
с моей моделью Store
, могу ли я больше делать что-то вроде $this->Brand->find('all')
?Когда я получаю, я получаю следующую ошибку:
Неустранимая ошибка: вызов неопределенного метода Brand :: find () в /[path]/app/controllers/brands_controller.php в строке 8
Вот определения моей модели:
class Brand {
var $hasAndBelongsToMany = array(
'Store' => array(
'className' => 'Store',
'joinTable' => 'brands_stores',
'foreignKey' => 'brand_id',
'associationForeignKey' => 'store_id',
'unique' => true
)
);
}
И моя Store
модель:
class Store extends AppModel {
var $hasMany = array(
'Reviews' => array(
'className' => 'StoreReview',
'foreignKey' => 'store_id',
'conditions' => array(
'approved' => 1
),
'order' => 'created DESC'
)
);
}