How to use django-contact-form (third-party app)?

旧城冷巷雨未停 提交于 2019-11-29 09:55:25

问题


django-contact-form is a popular third-party application. It aims to remove tedium and repetition by providing simple, extensible contact-form functionality for Django-powered sites. However I found the documentation is somehow difficult to follow(Perhaps I'm not clever enough:).

After some searching and testing, finally I got it to work. I'll write down the steps and code to help those who might be using it in the future.


回答1:


1. Install

pip install django-contact-form

2. Add necessary configuration to 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

Also, add 'contact_form' to your INSTALLED_APPS.

3. Create contact_form templates

Create a folder called contact_form in your templates folder and add these files into it:

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

You can write your own, Here's what I use:

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. URLconf

Add this line into your URLconf:

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

All Done



来源:https://stackoverflow.com/questions/22061178/how-to-use-django-contact-form-third-party-app

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!