Есть ли способ применить отличные перед фильтрацией в запросе на соединение?
У меня есть 2 таблицы:
class User(db.Model):
id = db.Column(db.Integer(), primary_key=True)
class Event(db.Model):
id = db.Column(db.Integer(), primary_key=True)
date = db.Column(db.DateTime, nullable=False, default=datetime.utcnow)
description = db.Column(db.String(80))
user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
user = db.relationship('User', backref=db.backref('events', lazy=True))
Я хочу выбрать всех пользователей, для которых самый последний описание события пусто.
Я думал, что это сработает:
User.query.join('events').order_by(Event.date).distinct(User.id).filter(Event.description==None)
Однако, кажется, что после фильтра вызывается отличный. Есть ли способ заставить применить отличные перед фильтрацией?