J'ai une application Rails (2.3.8) où j'envoie des courriels en utilisant ActionMailer de mes contrôleurs, sans aucun problème.Les paramètres régionaux ne fonctionnent pas lorsqu'ils sont appelés à partir d'une tâche râteau
Cependant, j'ai créé une tâche rake à appeler à partir d'un Cronjob (dans Heroku). Lorsque ces e-mails sont envoyés, aucune modification des paramètres régionaux dans mes dates n'est effectuée.
J'ai googlé pour trouver n'importe quel type de solution, mais je ne pouvais pas.
Quelqu'un peut-il m'aider?
Merci.
Voici le code:
cron.rake:
desc 'This task is called by the Heroku cron add-on'
task :cron => :environment do
puts 'Sending diary...'
hollydays = [6,0] #weekend
unless hollydays.member?(Time.zone.now.wday) #if is NOT a weekend
User.all.each do |user|
user.deliver_task_diary
end
end
puts 'done.'
end
méthode de modèle de l'utilisateur:
def deliver_task_diary
TaskMailer.deliver_task_diary(self)
end
la méthode dans le modèle TaskMailer:
def task_diary(user)
next_five_tasks = user.next_five_tasks
last_five_tasks = user.last_five_tasks
recipients "#{user.name} <#{user.email}>"
from "My site <[email protected]>"
subject "Your daily tasks."
sent_on Time.zone.now
body :user => user, :next_five_tasks => next_five_tasks, :last_five_tasks => last_five_tasks
extrémité
partie de mon modèle de courrier électronique qui doesnt locale:
<%=l task.estimated_delivery_date, :format => :short %>
Comment vous définissez les paramètres régionaux dans votre contrôleur ? – pantulis