модель связывания CakePHP через другую таблицу

У меня есть 3 таблицы. программное обеспечение, разрешение и центр. Я могу установить связь между программным обеспечением и разрешениями, а также между центром и таблицей разрешений. Я хочу получить доступ к программному обеспечению конкретного центра. Например, когда я получаю доступ /centres/:id/softwares.json, который вернет меня, как в следующем формате.

"Centre": {
"id": "1",
"name": "centre1",
"alias": "CN1""Software": [
{
"id": "1",
"name": "software1",
"description": "description1"},
{
"id": "2",
"name": "software2",
"description": "description2"},
...
]
}

Диаграмма ER

public $hasMany = 'Permission';
public $hasAndBelongsToMany = array(
'Software' => array(
'className' => 'Software',
'joinTable' => 'permissions',
'foreignKey' => 'id',
'associationForeignKey' => 'software_id',
'unique' => true,
)
);

Это пример SQL, который извлекает доступные программы для определенного центра (id: 1)

SELECT s.* FROM softwares s JOIN permissions p ON p.software_id = s.id WHERE p.centre_id=1;

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]