Как создать миграцию из существующей базы данных в laravel

Я новичок в laravel, я знаю команду для создания базы данных из laravel миграция.

Я уже создал базу данных в mysql, так как я могу преобразовать миграцию из этой базы данных.

8 ответов

Решение

Вы можете использовать инструмент генератора Джеффри Вей для Laravel 4, и делать это вручную. Это очень полезный инструмент. https://github.com/JeffreyWay/Laravel-4-Generators (если вы используете Laravel 5, используйте вместо этого этот пакет: https://github.com/laracasts/Laravel-5-Generators-Extended)

Или вы можете попробовать один из следующих пакетов, они должны преобразовать вашу существующую схему в миграцию Laravel. Я не пробовал их, но посмотрите:

Кроме того, прочитайте следующий ответ в другом вопросе, который может быть полезен вам или другим: обратное проектирование или автогенерация сущностей в Laravel?

Для современных версий Laravel вам, вероятно, следует использовать такой пакет, как https://github.com/kitloong/laravel-migrations-generator .

Проверьте, что этот пакет от Kitloong действительно прост в использовании.

https://github.com/kitloong/laravel-миграции-генератор

После установки просто запустите что-то вроде этого, чтобы экспортировать миграцию в выбранное вами место:

      php artisan migrate:generate --path="path\to\existing\folder"

Пример:

      php artisan migrate:generate --path="C:\xampp\htdocs\laravel_bs4\database\migrations\my_new_migrations"

Вы должны получить миграции, созданные из базы данных и сохраненные в указанном вами месте.

Вы можете опустить --pathвариант и просто запустите

      php artisan migrate:generate 

Это приведет к экспорту его в папку миграции Laravel по умолчанию (чего я обычно не хочу).

Обязательно следуйте подсказкам. Придерживаться значения по умолчанию обычно нормально.

Я быстро написал этот скрипт на python для создания файлов миграции из существующей базы данных.

https://github.com/aljorhythm/sql-to-laravel-migrations

После настройки просто сделайте

python retrieve-and-convert.py

Как насчет этого?

Генератор миграций. Это для Laravel, 4, 5, 6, 7, но я не знаю, для Laravel 8.

Простое решение: использовать онлайн-генератор миграции Laravel для существующей схемы таблицы SQL без установки какого-либо пакета. Просто введите свою схему SQL и получите файл миграции Laravel. Попробуйте: https://laravelarticle.com/laravel-migration-generator-online

Если вы не против использовать в своем проекте Doctrine 2 вместо Eloquent, в котором встроена обратная инженерия.

Для laravel 9 перейдите по ссылке ниже

https://laravel.com/docs/9.x/migrations#generating-migrations

Другие вопросы по тегам