我有一个带有文本字段的 Django 模型。我想在 Django Admin 中将文本字段的内容呈现给用户之前修改它。
我期望看到与 post_load 等效的信号,但它似乎不存在。
更具体地说:
我有一个接受用户输入的文本字段。在此文本字段中有一个阅读更多分隔符。分隔符之前的文本将进入 introtext 字段,之后的所有内容都会进入 fulltext 字段。
同时,我只想在用户 1 编辑文章时显示他们的文本字段。
我的计划是 on_load 从 introtext 和 fulltext 字段读取数据并将它们组合到全文文本区域中。在 pre_save 上,我将使用阅读更多分隔符分割文本,并将介绍存储在 introtext 中,将剩余部分存储在全文中。
因此,在显示表单之前,我需要使用以下内容填充全文字段
introtext + '<!--readmore-->' + fulltext
我需要能够对现有项目执行此操作。
最佳答案
查看 Providing your own form对于管理页面。
一旦你有了自己的表单,你就可以使用表单中的默认参数来提供你想要的初始值。请参阅 Initial param 上的文档对于表单字段。正如此链接将向您展示的那样,可以使用可调用或常量作为初始值。
关于python - Django:如何在管理中显示文本字段之前修改它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1517626/