2017-02-27 3 views
1

私はquerysetを返す関数を持っていますが、今ではquerysetをソートしたいと思いますが、どうすればよいのか分かりません。私は.product.upcが存在しないことを確認しましたし、私print(self.request.basket.all_lines()[0].product.upc)プロパティのプロパティでクエリーセットをソートするにはどうすればよいですか? django

によってUPCを取得することができています

def get_queryset(self): 
    print('--------------------------------') 
    # print(self.request.basket.all_lines()[0].product.upc) 
    print('--------------------------------') 
    return self.request.basket.all_lines() 

self.request.basket.all_lines()は私のクエリセットを返しますが、それはUPC

製品のだで、私はそれをソートしたいと思います正しい方向です。

私に手を差し伸べてもらえますか?

答えて

2

これを試しましたか?

return self.request.basket.all_lines().order_by('product__upc') 
+0

私は '「バスケット」オブジェクトは、バスケットの種類は何 – Tsuna

+0

のに何の属性「order_by''エラーを持っていないようなものになるだろうか? 'print(type(self.request.basket))' –

+0

'all_lines'が返す型は何ですか? 'print(type(self.request.basket.all_lines()))'です。 – jpmc26

0

pythonのsortedメソッドの使用はどうですか?

sorted(self.request.basket.all_lines(), key=lambda x: x.product.upc)

+0

''list 'オブジェクトに' ordered 'という属性がありませんが、このようなエラーが発生します – Tsuna

+1

私はまだ上記のコメントを追加できないため、Domenの回答には' self.request.basket.all_lines()。order_by(' product__upc ') ' –

+1

これを指摘してくれてありがとう。私は答えを編集しました。 –

関連する問題