56 votes

Est-il possible d'afficher les scripts de modification SQL générés par « rake db:migrate » ?

Est-il possible d'afficher les scripts de modification SQL générés par « rake db:migrate » ?

99voto

Josh Points 2733

En s'appuyant sur @qarol mais encore plus cool, ajoutez cette tâche Rake à l'un de vos fichiers Rake :

 task :log => :environment do
  ActiveRecord::Base.logger = Logger.new(STDOUT)
end

Ensuite, vous pouvez appeler N'IMPORTE QUELLE tâche Rake et enregistrer la sortie :

 rake log db:migrate

46voto

qarol Points 622

Vous pouvez créer une tâche Rake en lib/tasks/ :

 namespace :db do
  desc 'Make migration with output'
  task(:migrate_with_sql => :environment) do
    ActiveRecord::Base.logger = Logger.new(STDOUT)
    Rake::Task['db:migrate'].invoke
  end
end

Appelez ensuite rake db:migrate_with_sql pour consigner la migration.

17voto

Raja Points 11

La sortie SQL est capturée dans votre fichier journal d'environnement, par exemple development.log

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X