Джанго отдых простой способ уменьшить значение поля - PullRequest
0 голосов
/ 01 мая 2018

Я использую Django Rest, и мне нужно уменьшить значение целочисленного поля на определенную величину.

Сейчас я сначала получаю сохраненное значение, затем вычисляю новое значение и, наконец, записываю новое значение обратно.

Есть ли способ сделать это проще?

1 Ответ

0 голосов
/ 02 мая 2018

Пытался выбрать между комментированием и написанием длинной формы. Я думаю, что вы делаете это лучше всего, если вы говорите, что выполняете те пороки на стороне сервера, как выполнение вычислений в javascript, а затем исправление / вставка для обновления модели.

Я бы, наверное, сделал что-то вроде:

urls.py

...
url(r'^/descriptor/?p<model_link_pk>[\w\-]/subtract', viewsets.Subtractor.as_view(), name="subtract_thing_from_model"), 
...

Тогда в наборе:

class Subtractor(APIView):
     def post(self, request, format=None, model_link_pk=None):
         model_link = ModelObject.objects.get(pk=model_link_pk)
         model_link.integer_value -= request.data("subtract_by")
         model_link.save()
         return JsonResponse({"..."}) #or serializer

Дайте мне знать, если это имеет смысл или существует лучший способ.

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