所以我有表,我希望用户能够以任何他们喜欢的顺序查看表。这里有一个例子:了解SQLAlchemy中的中间SQL语句
class Thing(Base):
__tablename__ = 'thing'
id = Column(Integer, primary_key=True)
amount = Column(Integer)
date = Column(DateTime, default=datetime.now())
def __init__(self, amount):
self.amount = amount
所以我想提出以下查询:
if sort == 'amount':
orderby = Thing.amount.desc()
elif sort == 'date':
orderby = Thing.date.desc()
things = DBSession.query(Thing).order_by(orderby).all()
主要问题:
- 当我设置的排序依据声明,我是实际调用什么或者是刚刚设置的陈述?
- 我是否正确和有效地做到这一点?
我可以用过滤器做类似的工作吗?
filterby = Thing.amount == 5
东西= DBSession.query(事).filter_by(filterby)。所有()
谢谢!