Как сделать заполнение миграциями при связи многие ко многим?

Есть три таблицы Autor, Book и BookAutor. Таблица Autor заполняется вот так
$this->insert(Autor::tableName(), [
            'first_name' => 'Рей',
            'second_name' => 'Бредбери',
        ]);

вот так заполняется таблица Book
$this->insert(Book::tableName(), [
            'title' => '451 градус по Фаренгейту',
        ]);

теперь мне бы узнать id заполненных таблиц для того что бы заполнить таблицу BookAutor со значением
book_id и autor_id
  • Вопрос задан
  • 54 просмотра
Пригласить эксперта
Ответы на вопрос 2
VladimirAndreev
@VladimirAndreev
php web dev
а что мешает в миграциях создавать экземпляры Author и Book?
если там не миллионами импортится, конечно.

а вообще, похоже, Вам импорт нужен, а не миграции...
Ответ написан
Комментировать
@LAV45
$id = Yii::$app->db->schema
    ->insert(Autor::tableName(), [
        'first_name' => 'Рей',
        'second_name' => 'Бредбери',
    ]);

или
$this->insert(Autor::tableName(), [
    'first_name' => 'Рей',
    'second_name' => 'Бредбери',
]);
$id = Yii::$app->db->schema->getLastInsertID()
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы