2015-02-14 5 views
26

Ich weiß, das wird eine sehr grundlegende Frage sein.wie man benutzerdefinierte Suchfeld in django admin hinzufügen

In django habe ich erfolgreich ein Admin panel.Now i a ein benutzerdefiniertes Suchfeld in einem meinem Feld hinzufügen mag nämlich Photo field.But ich weiß nicht, wie benutzerdefiniertes Suchfeld in einem django admin hinzufügen panel.Wenn ich einige richtige Hinweise bekomme, glaube ich, dass ich es tun kann.

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) 

Ich mag ein benutzerdefiniertes Suchfeld in diesem Photo Feld hinzufügen, wo Bild gesucht werden kann, indem es ID ist Wie kann ich dieses Suchfeld in mein oben angegebenes Modell einfügen?

Antwort

41

Verwenden Sie das search_fields Attribut der ModelAdmin:

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

Vielen Dank für Ihre Antwort .. Ich möchte Artikel nach ID suchen, sollte ich 'id' oder' photo.id' in 'search_fields' Parameter enthalten? – RTan

+0

Ja, füge das '' id''-Feld zu den 'search_fields' hinzu. – catavaran

+1

und für diejenigen, die danach kommen, könnten Sie verwandte Modellfelder suchen, auch 'search_fields = ('name', 'relatedfield__name')' – ptim

0

kippt Antwort aufgrund des niedrigen Karma ..

aber vergessen Sie nicht, das Admin-Modell zu registrieren, wie

admin.site.register(Photo, PhotoAdmin) 
Verwandte Themen