当订单插入值改变时,Django mptt抛出错误

时间:2014-06-03 19:04:22

标签: python django django-mptt

我有这个mptt模型:

class Program_requirement_category(MPTTModel):
    display_order = models.IntegerField(null=True, blank=True)
    name = models.CharField(max_length=100, unique=False)
    min_credit = models.IntegerField(null=True, blank=True)
    max_credit = models.IntegerField(null=True, blank=True)
    parent = TreeForeignKey('self', null=True, blank=True, related_name='children')

    class MPTTMeta:
        order_insertion_by = ['display_order']

当我尝试在db中插入一些值时,我收到以下错误:

File "/home/abhishek/projects/mptttree/local/lib/python2.7/site-packages/django/db/models/sql/query.py", line 1074, in build_filter
    raise ValueError("Cannot use None as a query value")
ValueError: Cannot use None as a query value

我提到this question并想要解决我的问题。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

来自mptt文档:

  

order_insertion_by 字段名称列表,应在插入新树节点或现有节点时定义排序   正在重新定位,首先是最重要的排序字段名称。   默认为[]。   假设任何标识为定义排序的字段都将   在数据库中永远不会为NULL。