私は1.11.1と私は私のテストを実行したときに、私はこれらのメッセージのトンを取得しています突然のすべてにはDjango 1.10.4からアップグレードDjangoのページネーションモジュールにそのバック: https://github.com/django/django/blob/master/django/core/paginator.py#L100PythonのDjangoの残りのフレームワークUnorderedObjectListWarning
私のクエリセットのコードに関連すると思わ:
return get_user_model().objects.filter(id=self.request.user.id)
がどのように私はトンの詳細を見つけることができます彼の警告?私は、すべてのフィルタの最後にorder_by(id)
を追加する必要があるようですが、どのコードにorder_byを追加する必要があるのかわかりません(警告はスタックトレースを返さないので、テスト走行)。
ありがとうございます!
編集:
@KlausDを使用してください。冗長先端が、私はこのエラーの原因とテストを見て:
response = self.client.get('/api/orders/')
これはOrderViewSet
に行くが、シリアライザクラスのget_querysetで物事のどれもそれ原因と何がそれを引き起こしません。私は/ api/ordersを取得するために同じコードを使用する他のテストがありますが、それらは発生しません.... DRFはget_querysetの後に何をしますか?
https://github.com/encode/django-rest-framework/blob/master/rest_framework/pagination.py#L166
私は改ページにトレースバックを入れた場合、私は残りのフレームワークが、順序の警告をトリガしている私のクエリのどのに戻って指して何をジャンゴに関連するものの全体の束を取得します。
警告の原因となるテストの名前で簡単に見つけることができます。あなたは冗長でテストを実行したいかもしれません(ほとんどのテストランナーで '-v 2') –
ありがとう@KlausD。それは役に立つリマインダーです。 –
'' 'offset''と' '' limit'''を実行するクエリを探しますが、 '' 'order_by''はありません。 – gipsy