.distinct([*fields])
chỉ hoạt động trong PostgresSQL.
Từ khác biệt tài liệu
Đây là sự khác biệt. Đối với một lệnh gọi khác biệt () thông thường, cơ sở dữ liệu sẽ so sánh từng trường trong mỗi hàng khi xác định hàng nào là khác biệt. Đối với một lệnh gọi riêng biệt () với các tên trường được chỉ định, cơ sở dữ liệu sẽ chỉ so sánh các tên trường được chỉ định.
Như đã nêu, tất cả các trường trong một bản ghi đều được chọn. Rất có thể trong trường hợp của bạn, bạn đang nhận được các bản ghi có các giá trị trường khác nhau (trường hợp này nhiều khả năng xảy ra nếu bạn đang truy vấn nhiều bảng quan hệ ManyToMany hoặc ForeignKey).
Để hợp nhất dưới dạng mảng, bạn có thể tham khảo câu hỏi trước đó của mình Django Các giá trị khác biệt của Truy vấn hoạt động nhưng tôi không thể sử dụng kết quả truy vấn