跳转到主要内容

Django的Mailchimp邮件列表系统集成应用程序,使用Mailchimp API 1.3

项目描述

这是一个处理Mailchimp邮件列表系统的Django集成应用程序。

快速入门指南

安装

  1. 安装 django-mailchimp-v1.3

    pip install django-mailchimp-v1.3
  2. 在您的settings.py中添加一个MAILCHIMP_API_KEY,其值为您的mailchimp API密钥(显然)

  3. mailchimp添加到您项目的INSTALLED_APPS列表中

4. 要开始使用API,您应该先使用utils.get_connection()。这将使用您在settings.py中定义的API_KEY

将用户订阅到列表

  1. 获取列表

    list = mailchimp.utils.get_connection().get_list_by_id(<list key id>)
  2. 现在添加一个成员到邮件列表

    list.subscribe('example@example.com', {'EMAIL':'example@example.com'})

那些讨厌的合并变量

一般信息

Mailchimp是一个相当通用的服务。因此,它需要存储订阅该列表的人的信息,并且这些信息对该列表非常具体!

为了帮助您构建动态表单(可能),Mailchimp 添加了 merge_vars。它们基本上是一个字典,显示为每条信息定义的信息和元信息。以下是默认合并变量的示例(在一个全新的列表中,使用默认选项)

[
    {
    'field_type': 'email',
    'name': 'Email Address',
    'show': True,
    'default': None,
    'req': True,
    'public': True,
    'tag': 'EMAIL',
    'helptext': None,
    'order': '1',
    'size': '25'
    },{
    'field_type': 'text',
    'name': 'First Name',
    'show': True,
    'default': '',
    'req': False,
    'public': True,
    'tag': 'FNAME',
    'helptext': '',
    'order': '2',
    'size': '25'
    },{
    'field_type': 'text',
    'name': 'Last Name',
    'show': True,
    'default': '',
    'req': False,
    'public': True,
    'tag': 'LNAME',
    'helptext': '',
    'order': '3',
    'size': '25'
    }
]

如您所见,这是一个包含3个字典的列表,每个字典包含多个字段,您应该使用这些字段来构建用户界面(因为您正在使用此应用程序,这意味着您正在使用 Django 表单)。

获取它们

您可以使用以下 API 调用来重新创建此列表

list = mailchimp.utils.get_connection().get_list_by_id(<The list's key ID>)
print list.merges

使用它们

当您向 Mailchimp 发送 post 请求时,需要传递 merge_vars。例如,在 Mailchimp 网站上使用默认设置创建的新列表中,以下调用将一个成员添加到列表中(比上面的简单示例包含更多信息)

list = mailchimp.utils.get_connection().get_list_by_id(<The list's key ID>)
list.subscribe('example@example.com', {'EMAIL': 'example@example.com', 'FNAME': 'Monthy', 'LNAME': 'Pythons'})

注意使用“tag”字段作为字段的关键字(为什么它们没有将其称为“key”或“id”实在令人费解)。

创建视图

我们现在将尝试向上移动堆栈,创建必要的元素以制作可用的 Mailchimp 界面

启动您喜欢的编辑器并打开您的 views.py。输入以下代码片段

from django.http import HttpResponseRedirect
from mailchimp import utils

MAILCHIMP_LIST_ID = 'spamspamspamspameggsspamspam' # DRY :)
REDIRECT_URL_NAME = '/mailing_list_success/'
def add_email_to_mailing_list(request):
    if request.POST['email']:
        email_address = request.POST['email']
        list = utils.get_connection().get_list_by_id(MAILCHIMP_LIST_ID)
        list.subscribe(email_address, {'EMAIL': email_address})
        return HttpResponseRedirect('/mailing_list_success/')
    else:
        return HttpResponseRedirect('/mailing_list_failure/')

当然,如果您认为重定向用户不是正确的做法(处理表单可能是个好主意),请随意根据您的需求调整此简单示例 :p

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。

源分布

django-mailchimp-v1.3-1.4.0.tar.gz (31.8 kB 查看散列)

上传时间

构建分布

django_mailchimp_v1.3-1.4.0-py2-none-any.whl (49.6 kB 查看散列)

上传时间 Python 2

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面