Django Graphene мутация удаляет объекты вместо обновления

Есть такая мутация и довольно простая функция update, я ожидаю, что она будет обновлять только один параметр объекта, затем сохраняет его. На самом деле, при первом запросе она возвращает ожидаемый ответ, но объекты удаляются из БД.

class PortfolioMutation(graphene.Mutation):
    class Arguments:
        portfolio_id = graphene.ID()
        visible = graphene.Boolean()

    portfolio = graphene.Field(PortfolioType)

    @classmethod
    def mutate(cls, root, info, portfolio_id, visible):
        portfolio = Portfolio.objects.get(pk=portfolio_id)
        portfolio.visible = visible
        portfolio.save()
        return PortfolioMutation(portfolio=portfolio)


class UpdatePortfolio(graphene.ObjectType):
    """
    Portfolios mutation
    """

    update_portfolio = PortfolioMutation.Field()


schema = graphene.Schema(query=QueryPortfolios, mutation=UpdatePortfolio)

Точный запрос

mutation UpdatePortfolio{
  updatePortfolio(portfolioId: 1509, visible: false) {
    portfolio {
      name
      visible
    }
  }  
}

Respnse

{
  "data": {
    "updatePortfolio": {
      "portfolio": {
        "name": "High Yield Corporate Bonds",
        "visible": false
      }
    }
  }
}

Где я ошибся?

Вернуться на верх