【发布时间】:2021-04-25 17:15:48
【问题描述】:
models.py
class BlogArticle(models.Model):
# ...
likers = ArrayField(models.GenericIPAddressField(), default=list)
admin.py
admin.site.register(BlogArticle)
当使用 Django 管理页面处理具有空列表的文章时,输入为空。这对我来说没问题,但是在保存对象时(例如在编辑其他字段之后),我收到此错误:
它似乎被解释为None 值,而当前值实际上是一个有效的空列表。
为什么 Django 会使用相同的方式来表示管理员中的空列表和 None 值?我想知道它是不是设计不佳,或者我在这里遗漏了什么。
请注意,添加 blank=True 会使情况变得更糟,因为它不会引发任何错误,但会默默地将空列表转换为 None。
【问题讨论】:
标签: python django django-admin