自定义admin中继承admin.ModelAdmin时外键引用注意
数据库中的一对多,多对多概念,在Django中都可以使用外键来实现:
第一步,在models中定义外键(models.ForeignKey)
class Lesson(models.Model):
course = models.ForeignKey(Course, verbose_name=u"课程") # 添加外键
name = models.CharField(max_length=100, verbose_name=u"章节名")
add_time = models.DateTimeField(default=datetime.now, verbose_name=u"添加时间")
第二步,在adminx中关联外键的字段
class LessonAdmin(object):
list_display = ("course", "name", "add_time") # list_display中不能使用course__name 会报错
list_filter = ("course__name", "name", "add_time") # 这里引用了外键course表的name字段
search_fields = ("course__name", "name") # 这里引用了外键course表的name字段