自定义字段/表单字段(可能是窗口小部件?),用于存储字符串格式的值

时间:2013-09-23 17:28:01

标签: django django-models django-forms

我希望创建一个模型,我可以存储字符串格式化模式以及附带的值。

示例:

Pattern = 'Strength deals %d more damage for each %f%% critical chance'
Values = [2, 1.50]

模式只需要存储intfloat s。我最初的想法是简单地创建一个自定义字段,验证值,这将是它。您可以看到我的字段here

但是,这只是让我保存列表。我仍然需要一些方法来确定要验证的值的数量,检查它是否与其他字段匹配(一个简单的CharField)。这可以“手动”完成,但我想创建一个自定义表单字段,它将生成与模式中通配符数量相匹配的X输入框。

问题1:有没有办法“链接”两个字段,以便一个人可以对另一个字段的值起作用?

问题2:为了创建这个,我可能需要创建一个新的表单小部件,但这可能吗?关于如何开始的任何提示?

1 个答案:

答案 0 :(得分:1)

这可能不是确切的答案,但在评论中写下是不可行的。

另一个选项是在模型中存储为JSON字符串。像

[{ "Pattern": 'Strength deals %d more damage for each %f%% critical chance',
  "Values" : [2, 1.50]
}]

使用自定义表单字段作为JSON输入输入/输出。在Google上搜索时,可以使用相当多的实现。

使用这种方法,您可以尝试验证输入,以便格式字符串和提供的变量数匹配。