Я устанавливаю пакет laravel 4 Entrust. Я создаю файл миграции. Когда я пытаюсь выполнить миграцию, я получаю сообщение об ошибке ограничения внешних ключей. Является ли это проблемой в отношении некоторых настроек PhpMyAdmin? скопировать под ошибки прямо из PowerShell:Laravel4 Entrust - проблема с установкой внешнего ключа
PS C: \ WAMP \ WWW \ Лаборатория \ x_pat> PHP ремесленник доверьте: миграция
Таблицы: роли, assigned_roles, разрешения, permission_role миграции, которая создает " роли "," assign_roles "," permissions "," permission_role "будут созданы в приложении/данных каталог базы/миграции
Продолжить создание миграции? [Да | нет] да
Создание миграции ... Миграция успешно создана!
PS C: \ WAMP \ WWW \ Lab \ x_pat> PHP ремесленника мигрировать
миграции таблицу, созданную успешно.
[Exception] SQLSTATE [HY000]: Общая ошибка: 1215 Невозможно добавить ограничение внешнего ключа (SQL: изменить таблицу assigned_roles
добавить константный raint assigned_roles_user_id_foreign внешнего ключа (user_id
) ссылается users
(id
)) (Bindings: массив ( ))
[PDOException] SQLSTATE [HY000]: Общая ошибка: 1215 Невозможно добавить ограничение внешнего ключа
мигрируют [--bench [=»... "]] [--database [=". .. "]] [--path [=" ... "]] [--package [=" ... "]] [--pretend] [--seed]
Похоже, что тот, кто подготовил файл SQL миграции, забыл об этом индексе. Этот файл появился из самого приложения? –
Однако при миграции индексы отсутствовали, но даже добавление их давало ту же ошибку. Я должен был добавить их вручную. – johnnyfittizio
Извините, Марк, могу я задать вам последний вопрос: при назначении внешнего ключа правильно оставить ON DELETE - RESTRICT и ON-UPDATE - RESTRICT? – johnnyfittizio