【问题标题】:How to edit email address of existing member in mailchimp list using Gibbon gem如何使用 Gibbon gem 编辑 mailchimp 列表中现有成员的电子邮件地址
【发布时间】:2016-01-21 13:11:21
【问题描述】:

我已经找了很久,但找不到任何答案。 在我的 rails 4 应用程序中,我使用 Gibbon gem (v.2.0.1) 来管理 mailchimp 列表。就订阅和取消订阅用户而言,一切正常,但我无法更新订阅用户的电子邮件地址(尽管我可以更改名字和姓氏等每个参数)。

我的更新调用看起来像:

member = $gibbon.lists(list_id).members(member_id)
member.update(body: 
              { email_address: self.email,
                status: "subscribed",
                merge_fields: {FNAME: self.first_name,
                               LNAME: self.last_name}
               }
               )

我也尝试过 upsert,但没有运气。实际上可以更新mailchimp中的电子邮件还是我需要删除用户并创建一个新用户? 感谢您的帮助

【问题讨论】:

  • 您说您可以从列表中删除人员,但您是通过会员 ID 还是通过电子邮件地址执行此操作?我找不到通过电子邮件地址进行操作的方法,这就是我所拥有的。您是否正在跟踪用户的 MailChimp ID 以用于取消订阅?如果没有,您有没有找到一种方法从列表中(通过电子邮件地址)找到用户的 ID 以便能够删除它们?
  • 要取消订阅 MailChimp,您必须按照 Gibbon's docs 中的说明执行 gibbon.lists(list_id).members(lower_case_md5_hashed_email_address).update(body: { status: "unsubscribed" })。我将lower_case_md5_hashed_email_address 作为:mc_member_id 存储在我的用户模型中。

标签: ruby-on-rails ruby-on-rails-4 mailchimp gibbon


【解决方案1】:

在网络应用程序和一些旧版本的 API 中编辑地址是可能的,但这很棘手,因为大多数地址的历史记录在更改后都不会跟随。删除或取消订阅然后添加新地址可能是最好的方法。

【讨论】:

    【解决方案2】:

    经过一些额外的研究并联系 Mailchimp,我可以确认使用新的 api (v3.0) 无法编辑电子邮件地址,因为它是一个只读字段。 作为一种解决方案,我运行了一种专门编辑电子邮件地址的方法,该方法基本上检索 Mailchimp 中的成员(我将 mailchimp id 存储在 User 模型中的我的数据库中),将其删除并创建一个具有相同数据的新地址(例如,如果该成员取消订阅,则新成员也将取消订阅)。由于需要通过电子邮件链接确认更改的电子邮件地址(我正在使用设计),我在注册控制器中添加了一个 resque 任务来执行我的方法。希望对其他人有所帮助

    【讨论】:

      猜你喜欢
      • 2013-09-07
      • 2018-08-05
      • 2011-05-07
      • 1970-01-01
      • 2019-08-06
      • 2013-11-19
      • 2019-02-23
      • 2016-05-06
      • 2013-02-20
      相关资源
      最近更新 更多