私はDjangoでリーダーボードを作っています。それは酔っている何かを除いて、ほとんどのものを偉大な行います。正常ではないのですDjango降順で注文しています
! 70は540と200より高いです! 1位ではなく3位にする必要があります!なぜそれが起こっているのですか、それをどうやって修正できるのですか?
私はこれを使用して降順で合計またはtotalpoints
を使用してリーダーボードを注文しています:participants = Participant.objects.order_by('-totalpoints')
70が欠落していたとき、これは起こりませんでした。それがそこにあるとき、それは不具合を起こす。また、Total pointsがすべての課題から追加され、ASCIIや他の何かに問題があった場合はクラッシュしました。
ご協力いただきありがとうございます!
EDITは:IntegerFieldととして最後のフィールドを置き換え、今では
編集編集...昇順です:挑戦1,2,3,4が結合されると、それらはCharFieldsは後で整数に変換しています。だから、それはフィールドに入れられたIntegerだった。合計点がIntegerFieldに置き換えられた場合を除いて、リーダーボードは最初に空の順序を指定しています。
あなたは確かtotalpointsは整数ですか? "70"、 "540"、 "200"が文字列で、辞書順にソートされている場合は、順序が正しくなります。そうでない場合は、コードを示す必要があります。 [mcve] –
少し質問を変えて今すぐチェック – MatejMecka