Форма обновления Django

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

def edit(request):

    a = request.session.get('a',  None)
    form = Name_Form(request.POST, instance=a)
    if form.is_valid():
            j = form.save( commit=False )
            j.save()

Кажется, это работает, но не заполняет форму заранее. Вместо этого он начинается с пустой формы, которая уже была «отправлена» пустой (вы видите все ошибки, сообщающие вам об обязательных полях)

Я также попытался использовать

form = Name_Form(initial={'id':a.id})

для предварительного заполнения формы. Но если я сделаю это вместо строки form = Name_Form (request.POST, instance = a) , экземпляр не будет перезаписан, а будет создан новый.

Кажется, я не могу совместить обе функции.

Любая помощь приветствуется

5
задан JohnnyCash 14 February 2012 в 18:07
поделиться