मुझे रेलगाड़ी अनुप्रयोग पर रुबी में सेंड्रिड वेब एपीआई को एकीकृत करने के तरीके पर चरण-दर-चरण ट्यूटोरियल नहीं मिल रहा है। मैं इसके लिए बहुत नया हूं इसलिए शायद मुझे कुछ याद आ रही है।रेल पर रूबी के लिए सेंड्रिड एपीआई
मैं smtp वितरण विधि के बजाय सेंड्रिड वेब एपीआई का उपयोग करना चाहता हूं (एसएमटीपी विधि पर वेब एपीआई के लाभों के बारे में मेलगुन वार्ता: https://documentation.mailgun.com/quickstart-sending.html, और मैं सोच रहा था कि सेंड्रिड के पास या तो समान लाभ होंगे या मैं संभावित रूप से बाद में मेलगुन पर स्विच करूँगा)।
sendgrid मणि (https://github.com/sendgrid/sendgrid-ruby) स्थापित करने के बाद, प्रलेखन मुझसे कहता है "अपने SendGrid एपीआई कुंजी के साथ एक नए ग्राहक बनाएँ" करने के लिए, और मैं इसे 2 तरीके से कर सकते हैं कि:
require 'sendgrid-ruby'
# As a hash
client = SendGrid::Client.new(api_key: 'YOUR_SENDGRID_APIKEY')
# Or as a block
client = SendGrid::Client.new do |c|
c.api_key = 'YOUR_SENDGRID_APIKEY'
end
विशेष रूप से कहां में मेरी क्या मैं इस कोड को रखना चाहता हूं? क्या मुझे इसे अपने मेलर, मेरे एप्लिकेशन मेलर या कॉन्फ़िगर/वातावरण/production.rb फ़ाइल में रखना चाहिए? https://launchschool.com/blog/handling-emails-in-rails
इस ट्यूटोरियल यह लाइन client = SendGrid::Client.new(api_key: 'YOUR_SENDGRID_APIKEY')
वास्तव में मेलर विधि ही में जाना चाहिए की तरह दिखता है के अनुसार:
मैं इस ट्यूटोरियल है कि कैसे Mailgun एपीआई स्थापित करने के लिए के माध्यम से चलता है पर एक नज़र ले लिया। (संभवतः sendgrid जानकारी के साथ mailgun विशिष्ट जानकारी की जगह) launchschool.com उदाहरण के लिए नीचे देखें:
class ExampleMailer < ActionMailer::Base
def sample_email(user)
@user = user
mg_client = Mailgun::Client.new ENV['api_key']
message_params = {:from => ENV['gmail_username'],
:to => @user.email,
:subject => 'Sample Mail using Mailgun API',
:text => 'This mail is sent using Mailgun API via mailgun-ruby'}
mg_client.send_message ENV['domain'], message_params
end
end
साथ ही, मैं कैसे मिलता है मेरी मेलर विधि एक मेलर देखने के बजाय साधारण पाठ के रूप में में उल्लिखित भेजने के लिए लॉन्चस्कूल उदाहरण? उदाहरण के लिए, 'यह मेल भेजकर भेजा गया है ...' भेजने के बजाय मैं एक मेलर व्यू भेजना चाहता हूं (account_activation.html.erb जैसे कुछ)।
अंत में, मैं अपने आवेदन में डेविस का उपयोग कर रहा हूं, और मैं ईमेल भेजने के लिए वेब एपीआई का उपयोग करना चाहता हूं (यानी पासवर्ड रीसेट इत्यादि)। क्या इसका मतलब है कि मुझे डेविस के लिए कस्टम मेलर बनाना होगा? अगर ऐसा है, तो मैं वह कैसे करू?
डेविस (https://github.com/plataformatec/devise/wiki/How-To:-Use-custom-mailer) के अनुसार, मुझे "एक वर्ग बनाना जो डेविस :: मेलर" को विस्तारित करना चाहिए। क्या इसका मतलब है कि मैं बस अपने मेलर फ़ोल्डर में दस्तावेज़ों में रखी गई जानकारी के साथ एक फाइल बना सकता हूं? क्या मुझे डेविस के लिए एक अलग मेलर चाहिए या क्या मेरे पास डेविस मेलर से मौजूदा मेलर विरासत हो सकता है? अंत में, मैं ईमेल भेजने के लिए प्रेषक वेब एपीआई का उपयोग करने के लिए तैयार कैसे करूं (सरल smtp विधि के बजाय)?
लंबे प्रश्न के लिए खेद है, लेकिन उम्मीद है कि दूसरों को यह उपयोगी लगेगा।
धन्यवाद!
ने यह कोशिश नहीं की है लेकिन आशाजनक प्रतीत होता है: https://github.com/eddiezane/sendgrid-actionmailer –