2010-12-31 45 views

Trả lời

73
class SeminarInline(admin.StackedInline): 
    model = Seminar 
    extra = 0 
    ordering = ('-date',) 

làm việc cho tôi (trên chuyển thể từ mô hình của tôi) Nó được sắp xếp trong giảm dần ngày thêm tự

+1

Cả câu trả lời này và @Marcus Whybrow đều giải quyết được vấn đề. Câu hỏi đặt ra là nếu ai đó muốn hạn chế sắp xếp mặc định thành chỉ chế độ xem quản trị hoặc cho các chế độ xem khác. –

12

Bạn có thể thêm Meta tùy chọn để một Mô hình Django có thể quyết định cách nó hoạt động. Có một tùy chọn ordering xác định theo đó các bản ghi thuộc tính mô hình sẽ được đặt hàng.

Bạn có thể tìm thấy những tài liệu hướng dẫn cho các tùy chọn đặt hàng meta here in the Django docs:

+0

Đây không phải là câu trả lời bạn đang tìm kiếm? –

+0

Tôi có thể thấy wgar Lylo đang nói .. Tôi có cùng một vấn đề .. [a, b, c, d] .. Tôi muốn có thể cho phép quản trị viên sắp xếp lại dữ liệu mà không dựa vào một trường .. [d, c, a, b] ví dụ – Lee

+1

Giải pháp hoàn hảo! Ví dụ [ở đây] (https://docs.djangoproject.com/en/dev/topics/db/models/#meta-options) – Roger

7

Nếu bạn muốn xác định một trật tự trong một InlineAdmin django không cung cấp cho bạn một giải pháp chung để làm được điều này! Có some snippets out there cho phép bạn thêm chức năng này vào quản trị viên, cũng như grappelli skin cung cấp cho bạn một tính năng như vậy!

4

Ngoài ra còn có khả năng ghi đè get_ordering(self, request) của ModelAdmin cho phép đối với trường hợp không nhạy cảm đặt hàng:

from django.db.models.functions import Lower 

class MyModelAdmin(ModelAdmin): 
    list_display = ('name',) 
    search_fields = ['name'] 

    def get_ordering(self, request): 
     return [Lower('name')] # sort case insensitive 
+0

Tôi nghĩ rằng 'return [Lower ('name')]' phải là 'return [self.name.lower()]'. – LostMyGlasses

+0

@LostMyGlasses không, bạn chắc chắn không muốn hạ thấp tên trường nhưng các giá trị được sử dụng để sắp xếp. – Risadinha

+0

Được rồi, 'lần nhập' bạn đã thêm hiện cung cấp thông tin mới. – LostMyGlasses

Các vấn đề liên quan