Câu trả lời:
Reserved.objects.filter(client=client_id).order_by('-check_in')
Chú ý -
trước check_in
.
-
trước tên cột có nghĩa là thứ tự giảm dần mà không -
có nghĩa là tăng dần.
Reserved.objects.filter(client=client_id).order_by('-check_in')
Dấu gạch nối "-" phía trước "check_in" biểu thị thứ tự giảm dần. Thứ tự tăng dần được ngụ ý.
Chúng ta không phải thêm tất cả () trước bộ lọc (). Điều đó vẫn sẽ hoạt động, nhưng bạn chỉ cần thêm tất cả () khi bạn muốn tất cả các đối tượng từ Truy vấn gốc.
Thêm về điều này tại đây: https://docs.djangoproject.com/en/dev/topics/db/queries/#retrieving-specific-objects-with-filters
Bạn cũng có thể sử dụng hướng dẫn sau:
Reserved.objects.filter(client=client_id).order_by('check_in').reverse()
.all().filter()
không cần thiết. .filter()
một mình là ổn
cho thứ tự tăng dần:
Reserved.objects.filter(client=client_id).order_by('check_in')
cho thứ tự giảm dần:
1. Reserved.objects.filter(client=client_id).order_by('-check_in')
hoặc là
2. Reserved.objects.filter(client=client_id).order_by('check_in')[::-1]
Nó hoạt động loại bỏ .all()
:
Reserved.objects.filter(client=client_id).order_by('-check_in')
Thêm - sẽ sắp xếp nó theo thứ tự giảm dần. Bạn cũng có thể thiết lập điều này bằng cách thêm một thứ tự mặc định vào meta của mô hình của bạn. Điều này có nghĩa là khi bạn thực hiện một truy vấn, bạn chỉ cần thực hiện MyModel.objects.all () và nó sẽ xuất hiện theo đúng thứ tự.
class MyModel(models.Model):
check_in = models.DateField()
class Meta:
ordering = ('-check_in',)
Thứ tự tăng dần
Reserved.objects.all().filter(client=client_id).order_by('check_in')
Thứ tự giảm dần
Reserved.objects.all().filter(client=client_id).order_by('-check_in')
-
(dấu gạch nối) được sử dụng để chỉ ra thứ tự giảm dần ở đây.
Đây là làm việc cho tôi.
latestsetuplist = SetupTemplate.objects.order_by('-creationTime')[:10][::1]
67
Reserved.objects.filter (client = client_id) .order_by ('- check_in')
'-' biểu thị thứ tự giảm dần và đối với thứ tự tăng dần, chỉ cung cấp thuộc tính lớp