J'écris une tâche rake qui, à un moment donné, utilise une méthode d'importation de fichier YAML personnalisée pour graver la base de données.Utiliser ActiveRecord :: Base.transaction dans une tâche rake?
La tâche de coupe ressemble à:
desc "Seed the database with production/ data."
task :production => :environment do
import_yaml 'seed/production'
end
À un moment donné dans le code d'importation, je:
ActiveRecord::Base.transaction do
Essayer d'exécuter la tâche de rake lancers francs:
You have a nil object when you didn't expect it!
You might have expected an instance of ActiveRecord::Base.
The error occurred while evaluating nil.[]
La trace de pile pointe vers la ligne mentionnée ci-dessus dans le code.
Existe-t-il un moyen d'instancier ActiveRecord :: Base lors d'une tâche rake?
Merci!
ce que votre cher code? – Salil
Cela devrait certainement inclure du code ou au moins un échantillon. En outre, le titre de la question ne concerne pas le problème, ni la solution .... – rpbaltazar
Il devrait, non? 7 ans plus tard, je ne me rappelle pas quelle était la question/solution réelle. Je supprimerais cette question si je le pouvais mais cela ne me le permettrait pas parce que quelqu'un a écrit une réponse. –