Django увеличение значения в базе данных при обновлении - PullRequest
1 голос
/ 11 марта 2020

у меня есть таблица для инвентаря, где находится столбец Qty, я хотел бы добавить Qty, используя форму для суммирования нового значения с уже существующим в базе данных

мое представление на основе классов в views.py выглядит следующим образом:

class ItemUpdateView(LoginRequiredMixin, UpdateView):
model = Stock
template_name = 'users/item_update_form.html'
fields = ['qty']

прямо сейчас я получаю этот вывод:

снимок экрана при просмотре страницы

screenshot from page view

я хотел бы иметь пустой Кол-во Поле для ввода нового значения и после нажатия Добавить увеличение значения, уже существующее в базе данных, с этим новым значением

1 Ответ

0 голосов
/ 11 марта 2020

Вы можете добавить поле, которое сохраняется на уровне базы данных для количества в выражении для сохранения:

from django.db.models import <b>F</b>

class ItemUpdateView(LoginRequiredMixin, UpdateView):
    model = Stock
    template_name = 'users/item_update_form.html'
    fields = ['qty']

    def form_valid(self, form):
        <b>form.instance.qty += F('qty')</b>
        return super().form_valid(form)
...