Обратите внимание, что сначала вы должны установить расширение в Postgresql:
я есть столUnitOfWork
который имеет 3 столбцаcases_identified
, cases_completed
а такжеcases_double_check
, все из которых являются массивами Postgresql целых чисел.
Можно ли написать запрос (или гибридное свойство), который находит случаи, которые были идентифицированы, но не находятся в заполненных или перепроверенных столбцах?
Это то, что я придумал, но выражение SQL не работает:
@hybrid_property
def todo(self):
return [x for x in self.cases_identified
if x not in self.cases_completed and
x not in self.cases_double_check]
@todo.expression
def todo(cls):
return [x for x in cls.cases_identified
if x not in cls.cases_completed and
x not in cls.cases_double_check]
Ошибка, которую я получаю в тестовом запросе:
test = Session.query(UnitOfWork.todo).first()
NotImplementedError: Operator 'contains' is not supported on this expression