Django - обновить экземпляр пользователя по форме - PullRequest
0 голосов
/ 01 октября 2018

Перед всеми:

Djano VERSION = 1.8 , и я обязательно использую эту версию

Вопрос

Я не знаю, почему яневозможно обновить экземпляр пользователя с помощью формы.

Я имею в виду обновление: изменение значения в базе данных и в запросе

Модель пользователя не создана мной, но я использую django.contrib.auth.models.User

Код

Это мой код

app / forms.py

from django import forms
from django.contrib.auth.models import User

class ModificationForm(forms.ModelForm):
    class Meta:
        model = User
        fields = ['email']

app / views.py

from django.contrib.auth.decorators import login_required
from django.shortcuts import render
from app.forms import ModificationForm


@login_required
def profil(request):
    if request.method == "POST":
    form = ModificationForm(data=request.POST, instance=request.user)
    if form.is_valid():
        form.save()
    else:
        form = ModificationForm()

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

profile.html

<!DOCTYPE html>
<html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>Profil</title>
    </head>
    <body>
        <h1>Profil</h1>
        <a href='/deconnexion'> Logout </a>
        <form method="post" action=".">
           {% csrf_token %}
           {{ form.as_p }}
           <input type="submit" value="Enregistrer" />
       </form>
</body>
</html>

1 Ответ

0 голосов
/ 01 октября 2018

Ваша публикация не по той ссылке!Если вы этого не знаете, просто оставьте действие пусто в HTML-коде action="."!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...