Django:Order_by多个字段

时间:2016-04-12 05:57:32

标签: django django-orm

我以列表的形式获取order_by字段。 我想用django orm通过多个字段order_by。 列表如下:

orderbyList = ['check-in','check-out','location']

我正在写一个查询就像:

modelclassinstance.objects.all().order_by(*orderbyList)

我在列表中所期待的一切都是动态的。我没有预先设定的数据集。有人可以告诉我如何用这个写一个django ORM吗?

4 个答案:

答案 0 :(得分:40)

尝试这样的事情

modelclassinstance.objects.order_by('check-in', 'check-out', 'location')

您不需要.all()

您还可以在模型类中定义排序

类似

class Meta:
       ordering = ['check-in', 'check-out', 'location']

答案 1 :(得分:1)

试试这个:

listOfInstance = modelclassinstance.objects.all()

for askedOrder in orderbyList:
    listOfInstance = listOfInstance.order_by(askedOrder)

答案 2 :(得分:0)

查询参数中的传递订单列表

例如:yourdomain /?order = location&order = check-out

startActivityForResult()

答案 3 :(得分:-1)

你需要做的是链接查询集,换句话说:

SENTIMENT_THRESHOLDS = (0.4, 0.7)
SEQUENCE_LENGTH = 300
def run(data):
try:
    # Pick out the text property of the JSON request.
    # This expects a request in the form of {"text": "some text to score for sentiment"}
    data = json.loads(data)
    prediction = predict(data['text'])
    #Return prediction
    return prediction
except Exception as e:
    error = str(e)
    return error