Как обновить несколько таблиц, связанных через отношение HasMany - PullRequest
0 голосов
/ 26 апреля 2018

У меня есть две таблицы. Один - menu, а второе имя таблицы - submenu. submenu имеет menu_id в качестве внешнего ключа. Я хочу сделать запрос, подобный этому:

UPDATE submenu SET active=1 WHERE menu_id = 8;
UPDATE menu SET active=1 WHERE id = 8;

Я хочу обновить несколько полей в подменю и одно поле в таблице меню.

Это то, что я делаю. Но это не работает:

$this->loadModel("Menu");
$this->loadModel("SubMenu");

$active['active'] = 1;
$this->Menu->id = 8;
$this->Menu->SubMenu->saveAssociated($active);

Пожалуйста, дайте мне знать, что я здесь делаю не так

1 Ответ

0 голосов
/ 26 апреля 2018
$data = [
    'title' => 'First Post',
    'comments' => [
        ['body' => 'Best post ever'],
        ['body' => 'I really like this.']
    ]
];
$articles = TableRegistry::get('Articles');
$article = $articles->newEntity($data, [
    'associated' => ['Comments']
]);
$articles->save($article);
...