ребята, опишу правильно проблему автора:
у него есть таблица публикаций называемая как article (собственно сама таблица публикаций),
есть таблица tag (таблица тегов, в которой хранятся теги)
и есть таблица article_tag (которая является промежуточной таблицей, в которой хранятся связи между публикациями и тегами)
автор говорит, что у него в таблице article_tag находятся дубликаты записей, это никак не связано с миграциями, а связано с логикой сохранения связей,
то что Вы советуете ему добавить уникальный ключ в таблице article_tag не правильно, ибо в таком случае, в промежуточную таблицу нельзя будет вставить больше одной связки article_id - tag_id, а идея заложенная в первоначальную структуру миграции автора должна это делать, т.е. к одной публикации может быть привязано множество тегов, и один и тот же тег может быть привязан к многим публикациям
Некорректно работают миграции
Re: Некорректно работают миграции
Почему неправильно то?
Уникальный ключ на два поля article_id и tag_id, а не по отдельности.
... ADD UNIQUE ` article_tag_id_idx`(`article_id`, `tag_id`);
Уникальный ключ на два поля article_id и tag_id, а не по отдельности.
... ADD UNIQUE ` article_tag_id_idx`(`article_id`, `tag_id`);
Чтобы правильно задать вопрос, нужно знать бо́льшую часть ответа. Роберт Шекли.
Re: Некорректно работают миграции
chesar писал(а): ↑2018.03.05, 13:58Код: Выделить всё
$this->createIndex('uq_article_tag', 'article_tag', ['article_id', 'tag_id'], true);
и вместо какого createIndex, это надо заменить?
Re: Некорректно работают миграции
не заменить, а добавить в миграцию m180304_113052_create_article_tag_table
Re: Некорректно работают миграции
Покажи схему
Re: Некорректно работают миграции
показали бы свой код на гите, а то догадываться можно долго где вы там портачите