¿Cómo usar django-contact-form (aplicación de terceros)?

django-contact-form es una aplicación popular de terceros. Su objective es eliminar el tedio y la repetición al proporcionar una funcionalidad de formulario de contacto simple y extensible para los sitios potenciados por Django. Sin embargo, encontré que la documentación es algo difícil de seguir (tal vez no soy lo suficientemente inteligente :).

Después de algunas búsquedas y pruebas, finalmente lo hice funcionar. Escribiré los pasos y el código para ayudar a los que lo estén usando en el futuro.

1. Instalar

pip install django-contact-form 

2. Agregue la configuración necesaria a 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 

Además, agregue 'contact_form' a su INSTALLED_APPS .

3. Crea plantillas contact_form

Cree una carpeta llamada contact_form en su carpeta de templates y agregue estos archivos en ella:

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

Puedes escribir el tuyo, esto es lo que uso:

contact_form.html

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

Contact Form

To send us a message fill out the below form.

{% csrf_token %}

Name:

Your e-mail:

Message:

{% endblock content %}

contact_form.txt

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

contact_form_sent.html

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

Your message was sent.

{% endblock content %}

contact_form_subject.txt

 message from {{ name }} 

4. URLconf

Agregue esta línea en su URLconf:

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

Todo listo