Django: обновить базу данных sqlite из html-шаблонаPython

Программы на Python
Ответить
Anonymous
 Django: обновить базу данных sqlite из html-шаблона

Сообщение Anonymous »

У меня есть таблица базы данных под названием «FormDB.
Я написал программу для работы с CURD. Для каждой строки данных базы данных есть две кнопки «EDIT» и «DELETE».
Кнопка редактирования работает, когда я даю в шаблоне HTML. но когда я перенаправляюсь на страницу, где отображаются все данные базы данных, вместо обновления существующего значения создается новая строка данных.
view.py

Код: Выделить всё

def EditData(request, id):
a = FormDB.objects.get(id=id)
nameupdate = a.name
form = DjangoForm(request.POST)
if request.method == "POST" and form.is_valid():
newname = form.cleaned_data['name']
b = FormDB.objects.get(id=id)
b.name = newname
b.save()
return render(request, "editform.html", {'nameupdate' : nameupdate})

def ViewDBData(request):
editeddb = list(FormDB.objects.all().values())
return HttpResponseRedirect('/viewdb/')
editform.html

Код: Выделить всё

    
EDIT PAGE

{% csrf_token %}
{% if nameupdate %}
Enter new name: 



{% endif %}

urls.py

Код: Выделить всё

urlpatterns = [
...........
..........
path('viewdb/', ViewDBData),
]
Итак, когда я нажимаю «Отправить изменения», происходит перенаправление на страницу, где все данные базы данных отображаются с обновленным значением.

Подробнее здесь: https://stackoverflow.com/questions/791 ... l-template
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»