У меня есть следующий запрос установить на Django в 2 местах Единственное ограничение и дает мне разные результатыДжанго order_by() не делать в правильном порядке
Вот первый результат для следующих QuerySet
list_empleados = empleado.objects.filter(
empresa=session_empresa
).order_by('-puntos')[:3]
правильный результат должен быть:
19,13,9 вместо 9,19,13 посмотреть, что я имею в виду?
Вот второй QuerySet
list_empleados = empleado.objects.filter(
empresa=session_empresa
).order_by('puntos')
и вот результат
Правильный результат должен быть:
19,13,9,1 вместо 1 , 13,19,9 см., Что я имею в виду?
models.py
class empleado(models.Model):
empresa = models.ForeignKey(empresa)
nombre = models.CharField(max_length=50)
fecha_nacimiento = models.DateField(auto_now_add=False)
GENDER_CHOICES = (
('M', 'Masculino'),
('F', 'Femenino'),
)
sexo = models.CharField(max_length=1, choices=GENDER_CHOICES)
avatar = StdImageField(upload_to='avatar/%Y/%m/%d', variations={
'large': (300, 300, True),
'medium': (50, 50, True),
'thumbnail': (98, 122, True)})
correo = models.EmailField(max_length=100)
departamento = models.ForeignKey(departamento)
telefono = models.CharField(max_length=21)
direccion = models.CharField(max_length=200)
twitter = models.CharField(max_length=15)
usuario = models.CharField(max_length=15)
password = models.CharField(max_length=40)
primer_lugar = models.CharField(max_length=20)
segundo_lugar = models.CharField(max_length=20)
tercer_lugar = models.CharField(max_length=20)
goleador = models.CharField(max_length=20)
puntos = models.CharField(max_length=2, default=0)
partidos = models.CharField(max_length=4, default=0)
def avatarEmpleado(self):
return '<img src="/media/%s" height="90" width="90">' % (self.avatar.thumbnail)
avatarEmpleado.allow_tags = True
def __unicode__(self):
return self.nombre
Не могли бы вы показать нам определение 'empleado' модели? – piotrekw
отредактировал вопрос – eddwinpaz
Я сделал необработанный SQL-запрос на консоли MySQL в MySQL и дал те же результаты, поэтому я думаю, что это не Django Query, это плохо. потому что этот запрос дает те же результаты ВЫБОР Puntos, partidos ОТ empresa_empleado ГДЕ empresa_id = 1 ORDER BY Puntos DESC; – eddwinpaz