Используя SQLAlchemy ORM (декларативную форму), как вы программно создаете запрос из набора условий в словаре?
Я хочу искать эти записи в пользователяхтаблица, которая соответствует некоторым критериям, ранее собранным в dict.Я не могу знать заранее, какие поля будут использоваться, и должен уметь обрабатывать, что некоторые поля являются целыми числами, некоторые являются строками, что может быть много разных полей и т. Д.
Пример:
from sqlalchemy import Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class User(Base):
__tablename__ = 'users'
id = Column(Integer, primary_key=True)
name = Column(String)
email = Column(String)
Запрошено два запроса, в результате чего получаются следующие слова:
q1_dict = {'id' : 177}
q2_dict = {'name' : 'Johnny', 'email' : 'johnny@somewhere.com'}
Есть ли какой-нибудь простой / универсальный способ создания запросов из этих двух слов, просто полагаясь на фактключи соответствуют атрибутам класса User, при правильной обработке типов, автоматическом удалении небезопасных значений и т. д.любые хорошие ответы / примеры.
Решение:
Итак, после помощи от вас, ребята, решение кажется простым:
User.query.filter_by(**q1_dict)
User.query.filter_by(**q2_dict)
... чтобы перейти к двум запросам, необходимым в примере.
Я уже посмотрел на предоставленные вами ссылки, dagoof, но я думаю, что мой "питон" просто не был достаточно силен, чтобы получитьв растворпо своему усмотрению.:)