我有一个复杂的对象,我将其序列化存储在文本字段中。在大多数情况下,我希望从数据库中提取的对象是那个复杂的对象。但是,当我在表单中编辑它时,我只想在字段中看到序列化文本。
我尝试使用value_to_string
功能,但在使用admin编辑记录时,似乎根本没有调用它。
我该怎么做才能将原始序列化文本显示在管理文本字段中?
答案 0 :(得分:0)
由于管理员已使用您的模型字段的值,因此一个选项将重新序列化以进行编辑...
这提供了一种快速而肮脏的方式来覆盖某些字段 管理员中使用的选项。 formfield_overrides是一本字典 将字段类映射到要传递给字段的参数的字典 施工时间。
答案 1 :(得分:0)
我不确定这是否是同样的问题,但我想出了一种在显示之前更改管理表单中字段值的方法。我在this answer中解释了如何使用自定义小部件和自定义管理表单。
请注意,自定义窗口小部件仅可帮助您以其他格式显示值。它不会将输入值解析回对象,但我相信这也是可能的。