我正在尝试将长臂猿宝石添加到Rails 3.2应用程序中.
我按照说明操作,并设置了一个带有以下内容的gibbon.rb初始化程序
Gibbon::API.api_key = ENV["MAILCHIMP_API_KEY"]
Gibbon::API.timeout = 15
Gibbon::API.throws_exceptions = false
Run Code Online (Sandbox Code Playgroud)
该应用程序正在投掷
uninitialized constant Gibbon::API (NameError)
Run Code Online (Sandbox Code Playgroud)
我尝试过require 'gibbon',但似乎没有任何效果.
为什么课程没有初始化?
我正在尝试使用我一直在使用的通用方法使用Gibbon 2.2.4订阅用户Mailchimp subscribe,然后不久我想添加一些额外的字段来跟踪他们采取的测验结果.
我想将这些数据存储在Mailchimp上,因为我想管理我直接从Mailchimp的仪表板发送的电子邮件.
我创建的服务来处理我的订阅:
class MailchimpService
def subscribe(list_id,email,first_name)
GIBBON.lists(list_id).members.create({
body: {
email_address: email,
status: 'subscribed',
merge_fields: {
FNAME: first_name,
},
double_optin: false,
update_existing: true
}
})
end
def subscribe_to_quiz(first_name, email, user_id, quiz_id)
list_id = ENV['QUIZ_MAILCHIMP_LIST_ID']
if subscribe(list_id,email,first_name)
attempt = QuizAttempt.where("user_id = ? AND quiz_id = ?", user_id, quiz_id).last
correct = attempt.correct_answer_count
total = attempt.questions_answered
successful = attempt.successful?
send_quiz_results(list_id, email, correct, total, successful)
end
end
def send_quiz_results(list_id, email, correct, total, successful)
GIBBON.lists(list_id).members(email).upsert(
body: {
email_address: email,
status: …Run Code Online (Sandbox Code Playgroud) I am using the gibbon gem to connect to MailChimp. I am trying to retrieve a user from my list using their email address. According to: https://github.com/amro/gibbon the way to do this is the following:
gibbon.lists(list_id).members(lower_case_md5_hashed_email_address).retrieve
Run Code Online (Sandbox Code Playgroud)
I can get everything to work e.g. adding a new user
gibbon.lists(list_id).members
.create(body: {email_address: "#{email}", status: 'subscribed'} )
Run Code Online (Sandbox Code Playgroud)
This works fine, but if I try to retrieve one record I get an error: Gibbon::MailChimpError: bad URI
I am 95% sure it's because I am …
在我的应用程序的用户设置中,用户可以通过选中一个框来订阅或取消订阅MailChimp列表.我在检索用户MailChimp member_id时遇到了一些麻烦.
我创建了一个.env文件:
MAILCHIMP_API_KEY = "my_api_key"
MAILCHIMP_LIST_ID = "my_list_id"
Run Code Online (Sandbox Code Playgroud)
我创建了一个名为gibbon.rb的初始化程序:
Gibbon::Request.api_key = ENV["MAILCHIMP_API_KEY"]
Gibbon::Request.timeout = 15
Run Code Online (Sandbox Code Playgroud)
我在user.rb中使用此方法
def mailchimp_news
@mailchimp_list_id = ENV["MAILCHIMP_LIST_ID"]
@gibbon = Gibbon::Request.new
if self.news_email == true
@gibbon.lists(@mailchimp_list_id).members.update(body: {
email_address: self.email,
status: "subscribed",
merge_fields: {FNAME: self.name,
LNAME: ""}
})
elsif self.news_email == false
@gibbon.lists(@mailchimp_list_id).members(member_id).update(body: { status: "unsubscribed" })
end
Run Code Online (Sandbox Code Playgroud)
结束
并通过检查后调用它
after_save :mailchimp_news
Run Code Online (Sandbox Code Playgroud)
我收到这个错误:undefined local variable or method `member_id'.我如何获得member_id?
我正在尝试使用Gibbon和Mailchimp进行基本邮件列表设置.
当我启动我的rails服务器时,我经常遇到这个错误 rails s
我甚至降级到了版本 gem 'gibbon', '~>1.2.0'
但我的日志仍然是这样的
/Users/dadi/Documents/Vefir/stores/brainstore/config/initializers/gibbon.rb:2:in `<top (required)>': uninitialized constant Gibbon::Request (NameError)
from /Users/dadi/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/railties-4.2.5/lib/rails/engine.rb:652:in `block in load_config_initializer'
from /Users/dadi/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/activesupport-4.2.5/lib/active_support/notifications.rb:166:in `instrument'
from /Users/dadi/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/railties-4.2.5/lib/rails/engine.rb:651:in `load_config_initializer'
from /Users/dadi/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/railties-4.2.5/lib/rails/engine.rb:616:in `block (2 levels) in <class:Engine>'
from /Users/dadi/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/railties-4.2.5/lib/rails/engine.rb:615:in `each'
from /Users/dadi/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/railties-4.2.5/lib/rails/engine.rb:615:in `block in <class:Engine>'
from /Users/dadi/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/railties-4.2.5/lib/rails/initializable.rb:30:in `instance_exec'
from /Users/dadi/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/railties-4.2.5/lib/rails/initializable.rb:30:in `run'
from /Users/dadi/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/railties-4.2.5/lib/rails/initializable.rb:55:in `block in run_initializers'
from /Users/dadi/.rbenv/versions/2.2.3/lib/ruby/2.2.0/tsort.rb:226:in `block in tsort_each'
from /Users/dadi/.rbenv/versions/2.2.3/lib/ruby/2.2.0/tsort.rb:348:in `block (2 levels) in each_strongly_connected_component'
from /Users/dadi/.rbenv/versions/2.2.3/lib/ruby/2.2.0/tsort.rb:420:in `block (2 levels) in each_strongly_connected_component_from'
from /Users/dadi/.rbenv/versions/2.2.3/lib/ruby/2.2.0/tsort.rb:429:in `each_strongly_connected_component_from'
from /Users/dadi/.rbenv/versions/2.2.3/lib/ruby/2.2.0/tsort.rb:419:in `block in each_strongly_connected_component_from' …Run Code Online (Sandbox Code Playgroud)