首页 > 解决方案 > 通过 Django 向应用程序用户发送电子邮件

问题描述

所以,在我的例子中,用户输入他们的姓名、电子邮件、动机信等。当他们点击按钮时,只有用户status=3应该接受来自管理员电子邮件地址的电子邮件。我按如下方式完成了这项任务,但收不到任何电子邮件。

index.html

<form action="{% url 'index' %}" method="POST">
{% csrf_token %}
  <input type="text" name="name" required minlength="3"><br />
  <input type="email" name="email" required minlength="10"><br />
  <textarea rows="5" name="motivation_letter" required></textarea><br />
  <input type="submit" value="Send" class="apply-button">
</form>

models.py

class Applicant(models.Model):
    name = models.CharField(max_length=20)
    birth_date = models.DateField(blank=False)
    email = models.EmailField(max_length=40)
    motivation_letter = models.TextField(max_length=200)
    status = models.ForeignKey(ApplicantStatus, on_delete=models.CASCADE, default=3)

    def __str__(self):
        return self.name

views.py

def email(request):
    if request.method == 'POST':
        subject = 'Welcome!'
        message = 'We'll back to you.'
        email_from = settings.EMAIL_HOST_USER
        recipient_list = request.POST['sender_email']
        send_mail(subject, message, email_from, recipient_list)
    return redirect('index.html')

urls.py

urlpatterns = [
    path('', views.index, name='index'),
    path('', views.email, name='email'),
]

标签: pythondjangoemail

解决方案


推荐阅读