比如下面这3种 get 请求:
www.example.com/products?page=1&variation=mini&brand=xxx
www.example.com/products?page=1&variation=mini
www.example.com/products?page=1&brand=xxx
有3个参数,variation 和 brand 可能都有,也可能只有一个,或者都没有,还有一个page(分页)。
如果有 brand 就按 brand 过滤, 有 variation 就按 variation 过滤,两个都有就两个都过滤.
page 是做分页用的,不在model里面,过滤的时候不能把这个写上
这种情况该怎么写啊
三叔2016-10-22 17:15:02
def get_data(variation=None, brand=None, page=None): q = self.session.query(TableName) if variation: q = q.filter(TableName.variation == variation) if brand: q = q.filter(TableName.brand == brand) if page: q = q.limit(page * pageSize) return q.all()