我正在尝试使Heroku环境与我的新闻通讯功能一起使用。自从我几年前首次部署以来,它一直按预期运行。现在它停止工作了,我不知道为什么。
我尝试通过运行Heroku config:set MAILCHIMP_API_KEY=<API KEY>
和Heroku config:set MAILCHIMP_LIST_ID=<LIST ID>
重置Heroku环境变量。我还运行了export mailchimp_api_key="<API KEY>
和export mailchimp_list_id="<LIST_ID>"
。在新电脑上运行export命令设置环境变量后,它开始在本地运行。但是,在Heroku环境中仍然没有任何工作。
def create
@visitor = Visitor.new(secure_params)
if @visitor.valid?
@visitor.subscribe
flash[:notice] = "Signed up #{@visitor.email}."
redirect_to root_url(subdomain: 'www')
else
flash[:danger] = "Please add email address"
end
end
def subscribe
mailchimp = Gibbon::Request.new(api_key: Rails.application.secrets.mailchimp_api_key)
list_id = Rails.application.secrets.mailchimp_list_id
result = mailchimp.lists(list_id).members.create(
body: {
email_address: self.email,
status: 'subscribed'
})
Rails.logger.info("Subscribed #{self.email} to MailChimp") if result
end
在heroku日志中,它仅显示GET Processing by VisitorsController#new as HTML
,而没有显示POST VisitorsController#create
,这很奇怪。我希望create操作能够运行并将电子邮件添加到列表中。它在本地显示POST:
Started POST "/visitors"
Processing by VisitorsController#create as HTML