我似乎无法找到关于如何将Sendgrid Web API集成到Ruby on Rails应用程序的分步教程.我对此很陌生,所以也许我错过了一些明显的东西.
我想使用Sendgrid Web API而不是smtp传递方法(mailgun在这里讨论了Web API对SMTP方法的好处:https://documentation.mailgun.com/quickstart-sending.html ,我是认为Sendgrid会有相同的好处,或者我可能会在以后切换到mailgun).
安装sendgrid gem(https://github.com/sendgrid/sendgrid-ruby)后,文档告诉我"使用SendGrid API Key创建一个新客户端",我可以通过两种方式完成:
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
Run Code Online (Sandbox Code Playgroud)
具体在我的应用程序中,我应该把这段代码?我应该把它放在我的邮件程序,我的应用程序邮件程序或config/environments/production.rb文件中吗?
我看了一下本教程,介绍了如何设置Mailgun API:https://launchschool.com/blog/handling-emails-in-rails
根据本教程,看起来该行client = SendGrid::Client.new(api_key: 'YOUR_SENDGRID_APIKEY')实际上应该进入邮件程序方法本身.请参阅下面的launchschool.com示例(可能会使用sendgrid信息替换mailgun特定信息):
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 …Run Code Online (Sandbox Code Playgroud) 我有一个 webhooks 控制器,我希望能够以良好的可读格式查看打印到开发中的服务器日志的参数。Awesome_print 适合这个吗?我正在尝试使用 Prettyprint,例如下面的示例,但格式仍然不太可读。
尝试使用 PrettyPrint 来格式化参数
class DwollaWebhooksController < WebhooksController
require 'pp'
def create
pp params
case params[:topic]
when 'customer_funding_source_verified'
puts '----------customer_funding_source_verified-----------------'
end
end
Run Code Online (Sandbox Code Playgroud)
输出如下所示
<ActionController::Parameters {"id"=>"57dec892", "resourceId"=>"a0d172yx", "topic"=>"customer_bank_transfer_completed",...} permitted: false>
Run Code Online (Sandbox Code Playgroud)
我正在寻找至少有适当缩进、多行等的东西