Как отфильтровать поле с пустой строкой в ​​графене- django? - PullRequest
0 голосов
/ 13 января 2020

Я включил следующие фильтры в свой узел при использовании графена- django:

class SessionNode(DjangoObjectType):
    class Meta:
        model = Session
        filter_fields = {
            "id": ["exact"],
            "name": ["iexact", "icontains", "istartswith"],
            "event": ["exact"],
            "venue": ["exact"],
            "location": ["exact", "iexact", "contains", "isnull"],
            "start_time": ["lte", "gte", "exact"],
            "end_time": ["lte", "gte", "exact"],
        }
        interfaces = (relay.Node,)

Здесь я хотел бы запросить те сеансы, местоположение которых является пустой строкой. Результат, однако, также включает те сеансы, где строка местоположения не пуста.

Запрос:

{
  allSessions (location: ""){
    edges {
      node {
        id
        name
        location        
      }
    }
  }
}

Ответ:

{
  "data": {
    "allSessions": {
      "edges": [
        {
          "node": {
            "id": "U2Vzc2lvbk5vZGU6NmVhOWMzZDItMGMyNy00YjdiLWEwMDctZDA2NTg1MDk3NmFj",
            "name": "session 1",
            "location": ""
          }
        },
        {
          "node": {
            "id": "U2Vzc2lvbk5vZGU6N2YyOWNlNTAtYzQ3ZC00ZTQwLWE0YzUtODEyY2EyMmRjZmJj",
            "name": "session 2",
            "location": "exists"
          }
        }
      ]
    }
  }
}

Я что-то не так делаю или это ошибка в django -graphene?

Я использую graphene-django 2.8.0 с django 3.0.2.

...