0

这是一个棘手的问题......我的模型如下所示。我在下拉列表中显示 C 类,因为它在模型 (c,b,a) 中显示。

我想按 b 排序并以更好的方式显示它,每个 b 都有一个标题。

但我想将其显示为:

乙(甲)

C

C

C

C

再说一遍:

乙(甲)

C

C

 Class A(CodeList)
        Class Meta:

Class B(Models.Model)
    Name = models.Charfield(max_length=200)
    a = models.ForeignKey(A);
    def __unicode__ (self) :
        return "%s (%s)" % (self.name, self.a.name);
    def a_name(self) :
        return self.a.name;

Class C(Models.Model)
    Name = models.Charfield(max_length=200)
    b = models.ForeignKey(B);
    def __unicode__ (self) :
        return "%s (%s)" % (self.name, self.b.name, self.a.name);
    def b_name(self) :
        return self.b.name;
    def a_name(self) :
        return self.a.name;

有任何想法吗?

4

1 回答 1

0

订购应该是更容易的部分。只需在 C 的 Meta 选项中设置 'ordering' 选项。这是文档的相应部分:https ://docs.djangoproject.com/en/dev/ref/models/options/#ordering

分组有点棘手。我认为没有办法将 Select-widget 子类化并覆盖其渲染方法。

于 2013-05-10T14:12:54.763 回答