DjangoのmodelのMetaのorderingの挙動がおかしいとき

今回はDjangoのmodelのMetaのorderingの挙動がおかしいとき疑ってみると良いことについてご紹介いたします。



DjangoのmodelのMetaのorderingの挙動がおかしいとき

DjangoのmodelのMetaでorderingを設定しても正常に動作しませんでした。
orderingの項目は外部キーを参照していました。

結論として、外部キーを参照する側とされる側、両方をorderingで設定していることが問題でした。

例えば、外部キーの先で降順にして
5
4
3
2
1
と設定していた場合、外部キーを参照する側でさらにモデルの属性にマイナスを入れて降順に設定してしまうと
1
2
3
4
5
と元の昇順になってしまうのですね。

よって、外部キーの先で降順にしていて、外部キーの元でも降順を設定したい場合は、モデルの属性にマイナスを入れないことで、
5
4
3
2
1
と降順になり、狙った挙動になります。

単純ですが頭に入れておきましょう。

終わりに

今回はDjangoのmodelのMetaのorderingの挙動がおかしいとき疑ってみると良いことについてご紹介いたしました。

【お知らせ】
プログラミングのコンサルタントをすることを考えております。
下記の通り、かなり格安でご用意させていただいております。
【格安】プログラミングコンサル生募集(初心者向け、フリーランス志望向け)

詳しくは下記のリンクをご覧ください。
https://chico-shikaku.com/2020/10/programming-consult-2020/

11月くらいを目処に開始予定です。
最初は募集があれば先着5名くらいを目安に考えております。
質問や意見、問い合わせやお申し込みは下記のリンクよりお願いいたします。
https://docs.google.com/forms/d/e/1FAIpQLSeTXskmlyPAHuhwiOE9togqJPWdhXYCyRoVnFkkbS0VN0Ftug/viewform?usp=sf_link

最後までお読みいただきありがとうございます。
ブログやTwitterでのシェアOKです。
コメントもお待ちしております。
誤植や勘違いなどございましたらコメント欄にて教えていただけると幸いです。






Django

Posted by ちこ