Как выполнить условное обновление столбца в Django Tastypie - PullRequest
0 голосов
/ 04 февраля 2020

Я хочу обновить счетчик условно, если счетчик = 1, счетчик обновлений = 10.

class HelloModel(Model):

  count = models.IntegerField()


class HelloModelResource(Resource)

  def obj_update(self, bundle, request=None, **kwargs):

Является ли obj_update () правильным местом для обновления? Как обновить?

1 Ответ

0 голосов
/ 04 февраля 2020

Вы можете использовать выражения condititioanl и в соответствии с документацией :

Условные выражения могут использоваться в аннотациях, агрегатах, фильтрах, поисках и обновлениях. Их также можно комбинировать и вкладывать в другие выражения. Это позволяет вам делать мощные условные запросы.

from django.db.models import F, Q, When, Case, Value
YourModel.objects.update(count=Case( When(count=1,then=Value(10)), 
  default=Value("default_value")))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...