Tôi đã cố gắng thêm các trường tìm kiếm trong Django bằng python. Sau đây là các mã mà tôi đã sử dụng.Cách thêm Search_fields vào Django
# 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')
Tôi đã cố gắng thêm một search_fields cho tiêu đề và nội dung bằng cách sử dụng Mã sau.
class BlogAdmin(admin.ModelAdmin):
. . .
search_fields = ('title','body')
. . .
Khi tôi chạy điều này, tôi không thể thấy bất kỳ hộp tìm kiếm nào. Tại sao vậy ? Tôi muốn sự giúp đỡ của bạn. Tôi chỉ là người mới bắt đầu. Cảm ơn!
Tôi đã thêm "admin.site.register (Blog)" này nhưng khi tôi đang cố gắng thêm trình duyệt "admin.site.register (Blog, BlogAdmin)" này hiển thị lỗi được gọi là "NameError tại /admin/"...và vẫn gặp sự cố tương tự. – Grant
@Grant, hãy đảm bảo rằng bạn nhập Blog từ .mô hình - "từ Blog nhập myapp.models". Điều này phải ở trên cùng với các câu lệnh nhập khác. –
nhập của tôi như sau :::::::::: Có đúng không ?? từ blog.models nhập Blog từ quản trị viên nhập django.contrib từ mô hình nhập django.db admin.site.register (Blog) – Grant