如何在Django-admin中添加自定义搜索框?

时间:2015-02-14 05:20:41

标签: python django

我知道这将是一个非常基本的问题。

在Django中,我已经成功创建了一个管理面板。现在我想在我的一个字段Photo字段中添加一个自定义搜索框。但我不知道如何在django-admin面板中添加自定义搜索框。如果我得到一些正确的提示,我认为我可以做到。

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)

我想在此Photo字段中添加自定义搜索框,可以通过ID搜索图片。现在,如何在上面给出的模型中添加此搜索框。

3 个答案:

答案 0 :(得分:76)

使用ModelAdmin的<{3}}属性:

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

答案 1 :(得分:11)

由于低业力而无法回复..

但也不要忘记注册管理员模型,比如

<强> admin.py

from django.contrib import admin
from .models import *

admin.site.register(Photo, PhotoAdmin)

答案 2 :(得分:0)

当你写作时:

href="javascript:void(0)"

你在admin中注册了两个模型:Photo和PhotoAdmin,你必须为它注册Model和ModelAdmin,像这样:

admin.site.register([Photo, PhotoAdmin])