Рассчитать значение из GraphQL и сохранить его в моделях Django - PullRequest
2 голосов
/ 21 ноября 2019

Я пытаюсь вычислить значение из GraphQL. Я посылаю мутацию в модели Django, но перед сохранением я хочу вычислить это значение с помощью оператора if (если значение больше 10, разделить на 2, если меньше 10, умножить на 2).

Я надеваюНе знаю, куда добавить эту функцию.

Вот моя мутация в schema.py

class CreatePrice(graphene.Mutation):
    price = graphene.Field(PriceType)

    class Arguments:
        price_data = PriceInput(required=True)

    @staticmethod
    def mutate(root, info, price_data):
        price = Price.objects.create(**price_data)
        return CreatePrice(price=price)

class Mutation(graphene.ObjectType):
    create_product = CreateProduct.Field()
    create_price = CreatePrice.Field()

schema = graphene.Schema(query = Query, mutation=Mutation) 

А вот моя модель Django. Базовая цена является расчетным значением, а имя функции имеет две опции (* 2 или / 2 в зависимости от исходного значения).

class Price(models.Model):
    base_price = models.CharField(max_length = 20)
    function_name = models.CharField(max_length = 20, choices = PROMO_FUNCTION)

    def __str__(self):
        return self.price_name

PS Извините за плохой английский. Спасибо!

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