0

我有 Django 模型如下:

class Subject(models.Model):
    name = models.CharField(max_length=35, unique=True)
class Book(models.Model):
    title = models.CharField(max_length=400)    
    subject = models.ManyToManyField(Subject, related_name='books', blank=True, verbose_name="Subject")

有很多科目 - 大约 100 个。

在 Django 管理员上编辑书籍记录时,很难查看特定书籍中存在哪些主题。

Django 管理员提供了一个多选列表,这很棒,但是要查看一本书,您必须滚动整个选择列表。

如果以下任何一种情况都会好得多:

  1. 我可以在多选列表上方提供主题的只读列表,或者
  2. 多选列表从选定的科目开始,然后有一个类似“----”的条目,然后继续其他科目。

有谁知道我如何在 Django 中实现上述任何一个,以提高 Django 管理员中 ManyToManyFields 的可用性?

谢谢!

4

1 回答 1

1

使用filter_horizontal(或filter_vertical)。

于 2011-02-25T09:50:02.320 回答