У меня есть запрос, который возвращает объект User
.User
s имеют количество Post
s, которое они сделали.Когда я выполняю запрос, я хочу отфильтровать записи, найденные в User.post
, на основе определенного времени.Например, чтобы вернуть только сообщения в течение 1 дня с заданной отметкой времени.
class User(base):
__tablename__ = 'User'
class Post(base):
__tablename__ = 'Post'
user_id = Column(Integer, ForeignKey('User.uid'))
user = relationship(User, backref=backref('post')
time = Column(DateTime, default=func.current_timestamp())
Есть ли способ динамически изменить способ загрузки дочерних элементов в orm и указать его во время запроса?Что-то вроде (псевдокод):
User.query.filter_child(Post.time in timespan)
Важно отметить, что я не хочу отфильтровывать родителей, если нет детей, которые соответствуют критериям.Я только хочу отфильтровать потомков, загруженных по орме, для заданных пользователей.