У меня есть следующее свойство модели flask-sqlalchemy. Я хочу сделать это свойство approved_at
сортируемым столбцом в flask-admin, но, видимо, мне нужно преобразовать его в гибридное свойство с использованием выражений SQL.
@property
def approved_at(self):
approved_log = (
db.session.query(AuditLog)
.filter_by(target_id=self.id, target_table='consult')
.filter(AuditLog.new_values['status'].astext == "APPROVED: 5")
.order_by(AuditLog.timestamp.desc())
.first()
)
if approved_log:
return approved_log.timestamp
Я не знаю, как преобразовать этот запрос в выражение SQL sqlalchemy, так как он довольно сложный с запросом JSONB в нем. Я просмотрел все другие ответы SO, не смог понять.
Могу ли я получить помощь о том, как это сделать? Или, в качестве альтернативы, как сделать сортируемый столбец в Flask Admin, который не требует от меня использования гибридных выражений?