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 = '[email protected]' # 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