Контактная форма не отправляет меня, она показывает 404
Я новичок в django и у меня проблема уже 1 неделю, несколько учебников, которые я просмотрел, ничего не решили, поэтому я доверяю вам.
это просто заставить работать различные контактные формы моего сайта, разработанного на django. Поэтому я прилагаю исходный код моего проекта и код, когда я запускаю кнопку отправки (submit), я получаю ошибку 404
DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'
DEFAULT_FORM_EMAIL="ouesergegedeon225@gmail.com"
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = '587'
EMAIL_HOST_USER = 'ouesergegedeon225@gmail.com'
EMAIL_HOST_PASSWORD = 'Gedeon225@@'
EMAIL_USE_TLS = 'True'
EMAIL_USE_SSL = 'False'
def send_mail(request):
if request.method=="POST":
name = request.POST.get['name']
subject = request.POST.get['subject']
email = request.POST.get['email_address']
message = request.POST.get['message']
send_mail(
name,
subject,
email,
message,
'ouesergegedeon225@mail.com',
['gedeonachat@mail.com'],
fail_silently=False,
)
message.info (request, 'Votre message a été envoyé')
return render(request, 'contact.html')
path('send_mail/', views.send_mail, name="send_mail"),
<form action="send_mail" method="POST">
{% csrf_token %}
<div class="form-control-wrap">
<div id="message" class="alert alert-danger alert-dismissible fade"></div>
<div class="form-group">
<input type="text" class="form-control" id="fname" placeholder="Nom et prénom" name="fname">
</div>
<div class="form-group">
<input type="text" class="form-control" id="subject" placeholder="Le sujet" name="subject">
</div>
<div class="form-group">
<input type="email" class="form-control" id="email_address" placeholder="E-mail" name="email">
</div>
<div class="form-group">
<textarea class="form-control" rows="8" name="message" id="message" placeholder="message"></textarea>
</div>
<div class="form-group">
<button type="submit" class="btn v8" >Envoyer le message</button>
</div>
</div>
</form>
Атрибут action вашей формы неверен. Либо оставьте его пустым (если вы публикуете в том же представлении), либо используйте тег шаблона url для создания правильного URL:
<form action="{% url 'send_mail' %}" method="POST">
File "C:\Users\OUE\AppData\Local\Programs\Python\Python310\lib\site-packages\django\core\handlers\base.py", line 197, in _get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) Файл "C:\Users\OUE\Desktop\pcibenin\App\views.py", строка 43, в send_mail send_mail( TypeError: send_mail() получил неожиданный аргумент ключевого слова 'fail_silently' [19/Mar/2022 14:32:20] "POST /send_mail/ HTTP/1.1" 500 65465