migrations/migrations-generator 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

migrations/migrations-generator

最新稳定版本:2.2.3

Composer 安装命令:

composer require migrations/migrations-generator

包简介

Pacote Laravel para gerar automaticamente arquivos de migrations a partir do banco de dados

README 文档

README

Pacote Laravel 12 para gerar automaticamente arquivos de migrations e seeds a partir de um banco de dados MySQL ou PostgreSQL.

Requisitos

  • PHP >= 7.2
  • Laravel 8, 9, 10, 11 ou 12

Instalação

  1. No seu projeto Laravel, execute:

    composer require saviorenato/migrations-generator --dev
  2. O pacote utiliza autodiscovery do Laravel; o service provider será registrado automaticamente.

Observação: se preferir instalar como dependência de produção, remova o --dev.

Uso

Para gerar as migrations e os seeds com base na estrutura atual do banco, basta executar os comandos:

Para as migrations:

php artisan generate:migrations

Para os seeds:

php artisan generate:seeds

Após rodar o comando php artisan generate:seeds, abra o arquivo principal de seed (geralmente database/seeds/DatabaseSeeder.php) e adicione a linha abaixo dentro do método run():

$this->call((new NewDatabaseSeeder)->run());

Os comandos irão:

  • Ler todas as tabelas do banco (exceto a tabela padrão migrations).
  • Criar, em database/migrations, arquivos de migrations nomeados no formato YYYY_MM_DD_HHMMSS_create_{nome_tabela}_table.php.
  • Criar, em database/seeds, arquivos de seed correspondentes para popular suas tabelas.
  • Cada migration gerada conterá:
    • Método up() com Schema::create('{tabela}', …) para recriar a tabela.
    • Método down() com Schema::dropIfExists('{tabela}') para excluir a tabela.

Personalização

Se quiser ajustar algum detalhe, edite o comando em:

src/Console/GenerateMigrationsCommand.php

ou no comando de seeds, se aplicável.

Limitações

  • Não gera índices, chaves estrangeiras, triggers ou constraints.
  • Não suporta colunas compostas (composite keys) ou tipos avançados de colunas (JSON, enums, etc.) automaticamente.

Contribuições

  1. Faça um fork deste repositório.

  2. Crie uma branch para sua feature ou correção:

    git checkout -b feature-nova
  3. Faça commit das suas alterações:

    git commit -m "Descrição da sua contribuição"
  4. Envie um pull request para análise.

Licença

Este projeto está licenciado sob a licença MIT. Consulte o arquivo LICENSE.txt para mais detalhes.

Autor

Sávio Pereira (saviorenato@gmail.com)

统计信息

  • 总下载量: 9
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-06-20