Gere migrações Laravel a partir de um banco de dados existente, incluindo índices e chaves estrangeiras!
Observe que as edições do Laravel 4 Generator foram movidas para https://github.com/xethron/Laravel-4-Generators.git para atualizar a compatibilidade.
A maneira recomendada de instalar isso é através do compositor:
composer require --dev " xethron/migrations-generator "No Laravel 5.5 os provedores de serviço serão cadastrados automaticamente.
Em versões mais antigas da estrutura, edite config/app.php e adicione isto à seção de provedores:
Way Generators GeneratorsServiceProvider::class,
Xethron MigrationsGenerator MigrationsGeneratorServiceProvider::class, Se você deseja esta biblioteca apenas para dev, você pode adicionar o seguinte código ao seu arquivo app/Providers/AppServiceProvider.php , dentro do método register() :
public function register ()
{
if ( $ this -> app -> environment () !== ' production ' ) {
$ this -> app -> register ( Way Generators GeneratorsServiceProvider::class);
$ this -> app -> register ( Xethron MigrationsGenerator MigrationsGeneratorServiceProvider::class);
}
// ...
}Notas:
feature/laravel-five-stable foi bifurcado do way/generators 3.0.3 e foi preparado para o Laravel 5.0 . Jeffrey Way descontinuou o suporte para Laravel 5, então o outro artisan generate: comandos podem não ter se tornado compatíveis com 5.0 . Investigue o artisan make: comandos para substitutos, contribua com o Laravel para estender o suporte à geração ou corrija-o e envie um PR para jamisonvalenta/feature/laravel-five-stable . Execute o seguinte comando do compositor:
composer require --dev " xethron/migrations-generator:~1.3.0 "Em seguida, adicione os seguintes provedores de serviços:
' WayGeneratorsGeneratorsServiceProvider ' ,
' XethronMigrationsGeneratorMigrationsGeneratorServiceProvider ' , E você está pronto. Para verificar se está funcionando, execute php artisan e procure o comando migrate:generate
Para gerar migrações a partir de um banco de dados, você precisa ter seu banco de dados configurado no Config do Laravel.
Execute php artisan migrate:generate para criar migrações para todas as tabelas, ou você pode especificar as tabelas que deseja gerar usando php artisan migrate:generate table1,table2,table3,table4,table5 . Você também pode ignorar tabelas com --ignore="table3,table4,table5"
O Laravel Migrations Generator irá primeiro gerar todas as tabelas, colunas e índices, e depois configurar todas as restrições de chave estrangeira. Portanto, certifique-se de incluir todas as tabelas listadas nas chaves estrangeiras para que estejam presentes quando as chaves estrangeiras forem criadas.
Você também pode especificar o nome da conexão se não estiver usando sua conexão padrão com --connection="connection_name"
Execute php artisan help migrate:generate para obter uma lista de opções.
Confira a postagem do blog de Chung Tran para uma rápida introdução passo a passo: Gerar migrações a partir de um banco de dados existente no Laravel 4
Changelog para gerador de migrações Laravel
Obrigado a Jeffrey Way por seu incrível pacote Laravel-4-Generators. Este pacote depende muito do trabalho dele.
Bernhard Breytenbach (@BBreyten)
O Laravel Migrations Generator é um software de código aberto licenciado sob a licença MIT