如何使用django-contact-form(第三方应用)?

时间:2014-02-27 06:55:16

标签: python django email-integration contact-form

django-contact-form 是一种受欢迎的第三方应用。它旨在通过为Django支持的站点提供简单,可扩展的联系表单功能来消除乏味和重复。但是我发现documentation有点难以理解(也许我不够聪明:)。

经过一番搜索和测试后,我终于开始工作了。我会写下步骤和代码,以帮助那些可能在将来使用它的人。

1 个答案:

答案 0 :(得分:18)

1。安装

pip install django-contact-form

2。将必要的配置添加到settings.py

EMAIL_USE_TLS = True  
EMAIL_HOST = 'smtp.gmail.com'  
EMAIL_PORT = 587  
EMAIL_HOST_USER = 'laike9m@gmail.com'  # this is my email address, use yours
EMAIL_HOST_PASSWORD = os.environ['EMAIL_HOST_PASSWORD']   # set environ yourself

ADMINS = (
    ('your_name', 'your_email'),   # email will be sent to your_email
)

MANAGERS = ADMINS

另外,将'contact_form'添加到INSTALLED_APPS

3。创建contact_form模板

contact_form文件夹中创建一个名为templates的文件夹,并将这些文件添加到其中:

templates  
    └─contact_form  
          contact_form.html  
          contact_form.txt  
          contact_form_sent.html  
          contact_form_subject.txt  

你可以写自己的,这是我用的:

<强> contact_form.html

{% extends 'laike9m_blog/blog_base.html' %}

{% block content %}
  <h2>Contact Form</h2>
  <p>To send us a message fill out the below form.</p>
  <form method="post">{% csrf_token %}
    <p>Name: <input type="text" name="name"></p>
    <p>Your e-mail: <input type="text" name="email"></p>
    <p>Message: <textarea name="body" rows="10" cols="50"></textarea></p>
    <input type="submit" value="Submit">
  </form>
{% endblock content %}

contact_form.txt

{{ name }}
{{ email }}
{{ body }} 

<强> contact_form_sent.html

{% extends 'laike9m_blog/blog_base.html' %}

{% block content %}
  <h2>Your message was sent.</h2>
{% endblock content %}

<强> contact_form_subject.txt

message from {{ name }}

4。 URL配置

将此行添加到您的URLconf中:

(r'^contact/', include('contact_form.urls')),

全部完成