2015-02-14 22 views
26

Tôi biết đây sẽ là một câu hỏi rất cơ bản.cách thêm hộp tìm kiếm tùy chỉnh trong django admin

Trong django tôi đã tạo thành công một quản trị viên panel.Now tôi muốn có một thêm một hộp tìm kiếm tùy chỉnh trong một trong những lĩnh vực cụ thể là tôi Photo field.But tôi không biết làm thế nào để thêm hộp tìm kiếm tùy chỉnh trong một quản trị viên django panel.If tôi nhận được một số gợi ý thích hợp hơn tôi tin rằng tôi có thể làm điều đó.

Admin.py:

from django.contrib import admin 


from photo.models import Photo, 

class PhotoAdmin(admin.ModelAdmin): 

    list_display=('name','approved','approved_time','uploaded_time','user') 

models.py:

class Photo(models.Model): 
    name = models.CharField(max_length = 100) 
    photo = models.ImageField(upload_to = 'photos', blank=False,null=True) 
    approved = models.BooleanField(default = False) 
    approved_time = models.DateTimeField(auto_now=True,null=True,blank=True) 
    uploaded_time = models.DateTimeField() 
    description = models.CharField(max_length = 500 , blank = False , null = True) 
keyword = models.CharField(max_length = 500 , blank = False , null = True) 
    image_id = models.CharField(max_length=300, blank=True, null=True) 
    Certified = models.BooleanField(default = False) 
    approved_by = models.CharField(max_length = 100) 
    user = models.ForeignKey(User) 
    total_download = models.IntegerField(default=0) 
    watermarked_image = models.ImageField(upload_to = 'temp', blank=True,null=True) 

tôi muốn thêm một hộp tìm kiếm tùy chỉnh trong Photo lĩnh vực này, nơi hình ảnh có thể được tìm kiếm bởi nó ID .Làm thế nào tôi có thể thêm hộp tìm kiếm này trong mô hình đã cho ở trên.

Trả lời

41

Sử dụng search_fields thuộc tính của ModelAdmin:

class PhotoAdmin(admin.ModelAdmin): 
    ... 
    search_fields = ('name', 'description', 'keyword',) 
+0

Cám ơn trả lời của bạn .. tôi muốn tìm kiếm mục theo ID, tôi nên bao gồm 'id' hoặc' photo.id' trong tham số 'search_fields'? – RTan

+0

Có, thêm trường ''id'' vào' search_fields'. – catavaran

+1

và đối với những người đến sau, bạn có thể tìm kiếm trên các trường mô hình có liên quan, quá 'search_fields = ('name', 'relatedfield__name')' – ptim

0

trả lời không thể do nghiệp thấp ..

nhưng không quên để đăng ký quản lý Mô hình quá, giống như

admin.site.register(Photo, PhotoAdmin) 
Các vấn đề liên quan