RuntimeError в /signup: Измените свою форму, чтобы она указывала на 127.0.0.1:8000/signup/ , или установите APPEND_SLASH=False в настройках Django
RuntimeError at /signup Вы вызвали этот URL через POST, но URL не заканчивается слэшем, а у вас установлено значение APPEND_SLASH. Django не может перенаправить на URL с косой чертой, сохраняя данные POST. Измените свою форму, чтобы она указывала на 127.0.0.1:8000/signup/ (обратите внимание на косую черту), или установите APPEND_SLASH=False в настройках Django.
У меня возникла эта проблема при использовании форм. Пожалуйста, помогите Я использовал bootstrap для стилизации
<form action="/signup/" method = "post" >
{% csrf_token %}
<div class="input-group mb-3">
<span class="input-group-text" id="basic-addon1">@</span>
<input type="text" class="form-control" placeholder="Username" name = "username" aria-label="Username" aria-describedby="basic-addon1">
</div>
<div class="input-group mb-3">
<input type="text" class="form-control" placeholder="Firstname" name="fname" aria-describedby="basic-addon1">
</div>
<div class="input-group mb-3">
<input type="text" class="form-control" placeholder="Lastname" name="lname" aria-describedby="basic-addon1">
</div>
<div class="input-group mb-3">
<input type="email" class="form-control" placeholder="Recipient's email" name="email" aria-describedby="basic-addon2">
<span class="input-group-text" id="basic-addon2">@gmail.com</span>
</div>
<div class="input-group mb-3">
<input type="password" placeholder="password" name = "password" class="form-control">
</div>
<div class="input-group mb-3">
<input type="password" placeholder="confirm password" name = "con_password" class="form-control">
</div>
<div class="input-group mb-3">
<button type="submit" class="btn btn-primary">Signup</buttpn>
</div>
</form>
</div>
Views.py
def signup(request):
if (request.method == "POST"):
username = request.POST.get("username")
fname = request.POST.get("fname")
lname = request.POST.get("lname")
email = request.POST.get("email")
password = request.POST.get("password")
con_password = request.POST.get("con_password")
User.objects.create_user(username=username, first_name=fname, last_name=lname, email=email, password=password)
User.save()
messages.success(request, "Account created successfully")
return redirect("login")
Необходимо перенаправить на страницу входа
Либо добавьте APPEND_SLASH=False в settings.py. Или измените form action="/signup/"
на form action="/signup"