Как динамически загрузить, а затем получить доступ ко всем атрибутам модели Python, используя Flask SQLAlchemy - PullRequest
0 голосов
/ 24 февраля 2019

У меня следующий запрос:

refund_requests = RefundRequest.query\
            .with_entities(RefundRequest.id, User.email)\
            .join(User, User.id == RefundRequest.user_id) \
            .join(UserProperty, UserProperty.id == User.id) \
            .join(RefundRequestDetails, RefundRequestDetails.refund_requests_id == RefundRequest.id) \
            .join(Currency, RefundRequestDetails.currency_id == Currency.id) \
        .join(RefundRequest.project).all()

Это работает, но как динамически загрузить все атрибуты из RefundRequest и всех связанных моделей?

Я знаю, что могу выбрать все атрибуты внутриФункция with_entitites () (в приведенном выше коде я выбираю только идентификатор и адрес электронной почты из модели пользователя), но я не хочу перечислять все 50 атрибутов.

Я также знаю, что, удалив функцию with_attributes (), я могу получить доступс другими атрибутами модели, используя отношения, но в моем коде я создаю список строк, который представляет имя каждого столбца (атрибута).Этот список динамически создается пользователем - я не знаю, какое значение выбрал пользователь в fontend.Например, этот список выглядит следующим образом:

list_of_attr = ['id', 'email', 'full_name']

full_name - это атрибут UserProperty.

...