मैं delayed_job साथ इस कार्य हैविलंबित नौकरी 3
def any_method
locale = params[:locale]
UserMailer.to_user_when_his_account_is_suspended(order, locale).deliver
#more code
end
ईमेल उचित स्थान/भाषा पर भेज दिया जाता है ।
हालांकि देरी_job उचित लोकेल/भाषा को नहीं पहचानता है।
locale = params[:locale]
UserMailer.delay(queue: "Email", priority: 3).to_user_when_his_account_is_suspended(user, locale)
मेलर कोड::
def to_user_when_his_account_is_suspended(user, locale)
@user = user
@locale = locale
mail(:to => @user.email, :subject => t('.user_account_has_been_suspended'))
end
मैं इस समस्या को कैसे ठीक कर सकता इस मामले मैं locale = params[:locale]
साथ स्थान में मिलता है पर, आप अगले उदाहरण देख सकते हैं?
आपका क्या मतलब है 'delayed_job उचित स्थान नहीं पहचानता है'? क्या आप 'डिलीवरी' जोड़ना चाहते हैं? –
यदि आप देरी_job विधि में '.deliver' विधि जोड़ते हैं, तो आपको एक त्रुटि मिल जाएगी। मेरा मतलब है कि भेजे गए ईमेल, उनकी उचित भाषा पर नहीं भेजे जाते हैं। भाषा, पैराम [: लोकेल] के साथ मेरी विधि पर प्राप्त की गई है। धन्यवाद! – hyperrjas
पैराम्स [: लोकेल]? यह सही नहीं लगता है। क्या आपका मतलब है कि आप कार्य के अंदर स्थानीय परिवर्तनीय लोकेल का संदर्भ देते हैं, क्योंकि यह एकमात्र तरीका है जो यह काम करेगा। –