Soit /tasks
et lib/tasks
sont un bon endroit. J'utilise /tasks
, lorsque les tâches sont destinés à être utilisés pour le travail ou la gestion de la perle lui-même, j'utilise lib/tasks
, lorsque les tâches sont destinés à être chargés par le Gem utilisateurs.
C'est parce que les utilisateurs peuvent avoir un problème dans le chargement ruby fichiers en dehors de l' lib
le dossier qui est automatiquement ajouté à la charge du chemin lors de la Gemme est exige.
Aussi, je vous suggère d'utiliser le caractère *.râteau extension. De nos jours, presque tous les IDE associates .rake
extension de ruby et la plus avancée de l'IDE peut même analyser le contenu râteau scripts. L' .rake
extension est un meilleur choix pour les développeurs de trop parce que vous pouvez donner un aperçu immédiat du contenu à l'intérieur du fichier.
À propos de votre deuxième question, actuellement il n'y a pas moyen d'avoir des Rails de chargement de votre râteau tâches lorsque le plugin est fourni sous forme de Gem. Vous devez inclure le râteau de fichier dans votre application (à l'aide d'un râteau de fichier ou dans les principaux Rakefile) ou cloner le râteau tâches dans votre projet.
Si vous installez le plugin dans le fournisseur de dossier, tous *.rake
des fichiers dans les deux tâches et les lib/tasks répertoires sont automatiquement chargés dans les Rails portée par les deux lignes suivantes.
Dir["#{RAILS_ROOT}/vendor/plugins/*/tasks/**/*.rake"].sort.each { |ext| load ext }
Dir["#{RAILS_ROOT}/vendor/plugins/*/lib/tasks/**/*.rake"].sort.each { |ext| load ext }