如何在django的filter中传递字符串变量作为查询条件(动态改变查询条件)

一般来说在需要查询数据的时候都是以下形式

ret=Articles.objects.filter(id=1)

 

然而如果要动态的改变查询的条件怎么办呢?

如下代码

def getModelResult(model,*orders,**wheres):

    ret=model.objects

    ret=ret.filter(**wheres)

    for order in orders:
        ret=ret.order_by(order)

    return ret

 

使用

ret=getModleResult(Article,’-createtime’,uid=1,username=’aaa’)

 

是不是很简单?

 

posted @ 2013-06-24 17:23  Django中国  阅读(3284)  评论(0编辑  收藏  举报