因此,我想将在我的 rails 网站上注册的用户添加到邮件列表中。我已经安装了长臂猿 gem,并且成功地在一个独立的 ruby 文件中测试了我的 ruby 方法。但是,我在将其集成到我的应用程序中时遇到了问题。
我在 rails 日志中收到的错误是 ERROR -- : NotImplementedError (NotImplementedError)
这是我的方法,我试图从这篇博客文章中遵循:http: //aspiringwebdev.com/mailchimp-and-active-job-on-rails-4-adding-users-to-your-mailing-list-in-的背景/
我安装了一个后台工作人员(sucker_punch)。
我创建了一个名为 AddUserToRegistrationListJob 的作业
class AddUserToRegistrationListJob < ActiveJob::Base
queue_as :default
require 'gibbon'
def registration_list(user_id)
user = User.find(user_id)
email = user.email
first_name = user.first_name
last_name = user.last_name
mailchimp_list_id = "my list id here"
Gibbon::Request.api_key = "my api key here"
Gibbon::Request.timeout = 15
gibbon = Gibbon::Request.new
gibbon.lists("#{mailchimp_list_id}").members.create(
body:
{
email_address: email,
status: "subscribed",
merge_fields: {FNAME: first_name, LNAME: last_name
}})
end
end
然后在我的 user.rb 文件中,我有
after_create :add_user_to_registration_list
def add_user_to_registration_list
AddUserToRegistrationListJob.perform_later(self)
end
在我运行良好的 ruby 文件中,我将该方法的参数指定为
def registration_list(email, first_name, last_name)
并在我像这样运行 ruby 文件时传入对象:
registration_list("email@example.com", "John", "Doe")
不清楚如何调整方法或参数以适应导轨。有什么建议么?