【发布时间】:2015-12-21 16:14:50
【问题描述】:
我在 Django 1.6 中有一个从 django-uuidfield v0.4.0 导入的 UUID 字段。我无法更改 Django 版本。
id = uuidfield.UIIDField()
一切都很好,除了尝试在管理员中查看模型时,显示此错误:
需要一个字符缓冲区对象
问题似乎出在这一行:
return mark_safe(force_text(value).translate(_js_escapes))
来自站点包/django/utils/functional.py
我已尝试通过专门排除此字段来将其从管理员视图中排除
exclude=('id',)
并通过明确包含一个不同的字段,希望它只处理该字段而不是 ID 字段(如文档所示)。
include = ('email',)
但错误仍然存在。似乎管理站点无论如何都在检查这些字段,而忽略了管理设置中的任何设置。我还在模型定义中设置了“editable=False”,对 id 字段没有影响。
我不需要从管理员屏幕以任何方式操作或编辑此字段,只需将其隐藏,以免管理员崩溃。
【问题讨论】:
标签: python django django-admin