客户想要将自定义字段添加到我们提供的 django 模型中。
他想自己做这件事,不需要编程。
这些东西应该是可添加的:
- bool (是/否)字段。可选的“未设置”
- 单选题
- 多选字段
- 单行文本域
- 文本区域
- 日期
示例:
The customer wants to add a field he calls "was successful". And the field > should have these choices: yes/no/unset. Defaulting to unset.
如果我可以通过创建或扩展模型来做到这一点,事情就会很容易。但在这种情况下,不允许更改源代码:-(
如何解决?
更新
需要支持查询具有给定值的实例。示例:显示“成功”为 True 的所有实例。
最佳答案
您可以在 EAV principle 之后创建一个表(实体属性值)。基本上这是一个包含以下列的非规范化表:
[ID(和/或 slug)、float_value、integer_value、string_value](向该表添加更多列)
现在假设您有一个名为“Member”的现有表。当客户通过您的 UI 添加动态字段时,您可以在此处添加条目并使用“ID”查找给定成员。
关于python - 将自定义字段添加到 Django 模型(不更改源代码),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35310552/