Django воспринимает запрос post как get. Формы django не работают должным образом

django принимает мой запрос post и get, а действие формы возвращает неправильный url снова и снова. (мой html шаблон):-

    <div class="flex flex-col text-center w-full mb-12">
        <h1 class="sm:text-3xl text-2xl font-medium title-font mb-4 text-gray-900">Change Password</h1>
        <p class="lg:w-2/3 mx-auto leading-relaxed text-base">Change Your Accounts Password.</p>
    </div>
    <div class="lg:w-1/2 md:w-2/3 mx-auto">
        <form action="/profile/change-password/" method="post">
            {% csrf_token %}
            {{ form|crispy }}
            <div class="p-2 w-full">
                <button
                    class="flex mx-auto text-white bg-indigo-500 border-0 py-2 px-8 focus:outline-none hover:bg-indigo-600 rounded text-lg">Change</button>
            </div>
        </form>
    </div>

</div>

(views.py):-

def change_password(request):

if request.method == "POST":

    form = PasswordChangeForm(data=request.POST, user=request.user)

    if form.is_valid():

        form.save()

        messages.info(request, "Password Changed Succesfully!")

        update_session_auth_hash(request, form.user)

        return redirect("/profile/")

    else:

        messages.info(request, "Please Try Again.")

        return redirect("/change-password/")

else:

    form = PasswordChangeForm(user=request.user)

    return render(request, "change_password.html", {'form': form})

(urls.py):-

urlpatterns = [

path("", profile),

path("edit-profile/", edit_profile),

path("change-password/", change_password),

]

Помогите пожалуйста

Вернуться на верх