Pythonを使用してDjangoに検索フィールドを追加しようとしました。以下は、私が使ったコードです。DjangoでSearch_fieldsを追加するには
# admin.py file
from django.db import models
from blog.models import Blog
from django.contrib import admin
admin.site.register(Blog)
class Blog(models.Model):
title = models.CharField(max_length=60)
body = models.TextField()
created = models.DateTimeField("Date Created")
updated = models.DateTimeField("Date Updated")
def __unicode__(self):
return self.title
class Comment(models.Model):
body = models.TextField()
author = models.CharField(max_length=60)
created = models.DateTimeField("Date Created")
updated = models.DateTimeField("Date Updated")
post = models.ForeignKey(Blog)
def __unicode__(self):
return self.body
class CommentInline(admin.TabularInline):
model = Comment
class BlogAdmin(admin.ModelAdmin):
list_display = ('title','created', 'updated')
search_fields = ['title','body']
list_filter = ('Date Created','Date Updated')
inlines = [CommentInline]
class CommentAdmin(admin.ModelAdmin):
list_display = ('post','author','body_first_60','created','updated')
list_filter = ('Date Created','Date Updated')
次のコードを使用してtitleとbodyのsearch_fieldsを追加しようとしました。
class BlogAdmin(admin.ModelAdmin):
. . .
search_fields = ('title','body')
. . .
これを実行すると、検索ボックスが表示されません。何故ですか ?私はあなたの助けが必要です。私は初心者です。 ありがとう!
私はすでにこの "admin.site.register(Blog)"を追加しましたが、この "admin.site.register(Blog、BlogAdmin)"ブラウザに"NameError at /admin/"...というエラーがありますが、それでも同じ問題があります。 – Grant
@Grant、.models - "from myapp.models import Blog"からブログをインポートするようにしてください。これは他のインポートステートメントの一番上になければなりません。 –
私のようなインポートは次のとおりです::::::::::これは正しいですか? from blog.modelsブログをインポート django.contribをインポートする をdjango.dbからインポートする admin.site.register(ブログ) – Grant