Агрегированные атрибуты SQLAlchemy-Utils: как применить фильтр перед агрегированием для создания агрегированного поля?Python

Программы на Python
Anonymous
Агрегированные атрибуты SQLAlchemy-Utils: как применить фильтр перед агрегированием для создания агрегированного поля?

Сообщение Anonymous »

Код: Выделить всё

from sqlalchemy_utils import aggregated

class Thread(Base):
__tablename__ = 'thread'
id = sa.Column(sa.Integer, primary_key=True)
name = sa.Column(sa.Unicode(255))

@aggregated('comments', sa.Column(sa.Integer))
def comment_count(self):
return sa.func.count('1')

comments = sa.orm.relationship(
'Comment',
backref='thread'
)

class Comment(Base):
__tablename__ = 'comment'
id = sa.Column(sa.Integer, primary_key=True)
content = sa.Column(sa.UnicodeText)
thread_id = sa.Column(sa.Integer, sa.ForeignKey(Thread.id))
active = sa.Column(sa.Boolean)
Я хочу, чтобы поле comment_count отображало ТОЛЬКО активные комментарии, а не ВСЕ комментарии. Возможно ли это?
Пример основан на документации: https://sqlalchemy-utils.readthedocs.io ... gates.html

Подробнее здесь: https://stackoverflow.com/questions/787 ... regating-t

Вернуться в «Python»