Malheureusement, il n'existe aucun moyen de programmation. Les tâches de rake peuvent être chargées à partir des rails eux-mêmes, de lib/tasks, ou de n'importe quel plugin avec un répertoire de tâches.
Cela devrait choper la plupart de tout pas dans Rails lui-même:
find . -name "*.rake" | xargs grep "whatever"
Quant à db:schema:dump
, voici la source:
desc "Create a db/schema.rb file that can be portably used against any DB supported by AR"
task :dump => :environment do
require 'active_record/schema_dumper'
File.open(ENV['SCHEMA'] || "#{RAILS_ROOT}/db/schema.rb", "w") do |file|
ActiveRecord::SchemaDumper.dump(ActiveRecord::Base.connection, file)
end
end
Il se trouve sur la ligne 242 de lib/tâches/base de données. ratisser dans les rails 2.2.2 gem. Si vous avez une version différente de Rails, recherchez "namespace :schema
".
Vous voulez probablement la source du ActiveRecord::SchemaDumper
, mais je pense que vous ne devriez avoir aucune difficulté à trouver où c'est. :
Jolie trouvaille géniale. – Tilendor
Juste pour info: vous devez vous assurer que rake est chargé avant d'utiliser cette méthode. si ce n'est pas le cas, faites simplement un "rake". –
beaucoup obligé, gentil monsieur! – mrstif