自定义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字段

 

posted @ 2017-02-28 22:42  Vincen_shen  阅读(532)  评论(0)    收藏  举报