Я пытаюсь использовать несопоставленные свойства в своем классе модели SQLAlchemy. Это просто то, что я делаю:
class Event(db.Model):
....
is_favourite = False
Когда я пытаюсь установить значение этого несопоставленного свойства, у меня странное поведение. Вот что происходит (предположим, у меня есть список из 3 событий):
events[0].is_favourite = True
events[1].is_favourite = True
events[2].is_favourite = True
current_app.logger.info(events[0].is_favourite)
current_app.logger.info(events[1].is_favourite)
current_app.logger.info(events[2].is_favourite)
Это печатает:
True False True
Пока я Я ожидаю
True True True
Это, на мой взгляд, очень странное поведение, учитывая, что это просто свойство класса. Почему это происходит? Есть ли способ использовать несопоставленные свойства в SQLAlchemy?
Редактировать
Как Стивен указал в комментарии правильный путь для достижения этой цели используя реконструктора. Кстати, моя проблема была в самом запросе, так как я перебирал
Event.query.filter(Event.uuid.in_(events_uuids))
вместо
Event.query.filter(Event.uuid.in_(events_uuids)).all()