如何在django ForeignKey字段中自定义排序顺序
我想将类别选择器显示为一个如何在django ForeignKey字段中自定义排序顺序,django,django-models,Django,Django Models,我想将类别选择器显示为一个字段,其中包含已排序的类别树。 应该是这样的 class Article(models.Model): # usefull staff category = models.ForeignKey("Category") class Category(models.Model): parent = models.ForegnKey('self') 哪种方法最好?我希望使用ForeignKey类的继承,但它很复杂。也许整个问题是“如何从多重继承
字段,其中包含已排序的类别树。
应该是这样的
class Article(models.Model):
# usefull staff
category = models.ForeignKey("Category")
class Category(models.Model):
parent = models.ForegnKey('self')
哪种方法最好?我希望使用ForeignKey类的继承,但它很复杂。也许整个问题是“如何从多重继承类继承?”用于表示数据库中的类别树。然后,您可以根据每个类别的“left”值进行排序。我通过继承ForeignKey类和重写方法完成了排序
top level category1
lower level1
lower level2
even lower level
even lower level 2
lower level3
top level category2
lower level500
而MyChoiceField
是ChoiceField
的子项,我在这里更正了验证
def formfield():
return MyChoiceField(choices = get_category_tree())