Как получить "ближайший" элемент, используя фильтр django или как-то еще
В настоящее время я получаю
Specific_Place |Start_Time (период)
101 |7
101 |8
101 |9
102 |7
102 |8
102 |9
Я хочу напечатать только ближайшее «время начала» (период), как показано ниже, как мне решить эту проблему?
Specific_Place |Start_Time (период)
101 |7
102 |7
Это мой код Django
models.py----------------------------
class Study(models.Model):
Number_id = models.CharField(max_length=10)
Name = models.CharField(max_length=32)
Grade_Point = models.FloatField(default=None)
Time = models.CharField(max_length=10)
Prof_Name = models.CharField(max_length=10)
Class_People = models.IntegerField(default=None)
Day = models.CharField(max_length=1)
Start_Time = models.IntegerField()
End_Time = models.IntegerField()
Place = models.ForeignKey(PlaceName, on_delete=models.CASCADE)
Specific_Place = models.ForeignKey(Specific, on_delete=models.CASCADE)
views.py-----------------------------------------
places = "Prime"
empty_lecture_in_list=["101","102"]
empty_lecture = Study.objects.filter(
Place=places,
Specific_Place__in=empty_lecture_in_list
Day=4, #0~6 mon(0), tues(1), wed(2)... sun(6)
Start_Time__gt=132 #this 132 means Time -> 132/12 -> 11 o'clock
)
for aa in empty_lecture_in:
print(aa.Specific_Place)
print(int(aa.Start_Time/12-8)) # this means period