行选择如下:
$book->getBookGenreToBooks()->???()
我想更改所有选定行的«checked»列。
答案 0 :(得分:1)
您的答案中给定的解决方案效率非常低,因为它为每次更新创建了一个新查询。更好的方法是在一个查询中进行所有更改:
BookGenreQuery::create()
->filterByBookId($book->getId())
->update(array('Checked' => 1));
我不知道你的关系和领域究竟是如何命名的,你应该了解它背后的想法。
答案 1 :(得分:0)
$genresToBook = $book->getBookGenreToBooks();
foreach ($genresToBook as $genreToBook) {
$genreToBook->setChecked(1); //Set any data here
}
$genresToBook->save();
这并不是我想要的,但这对我来说很好。