是否可以覆盖TabularInline管理表单中字段的html命名,以便它们不包含短划线?
我正在尝试应用获得的知识here来创建具有自动完成功能的TabularInline管理表单。
除了Django坚持将tabularinline查询集中的字段命名为以下行中的内容之外,一切正常:
[model]_set-[index]-[field]
因此,如果我的模型是TravelLogClient并且我的外键字段是公司,那么表格在线查询集中三个条目的HTML表单中的字段将是:
travellogclient_set-0-company
travellogclient_set-1-company
travellogclient_set-2-company
问题是javascript不喜欢带有破折号的标识符。所以javascript失败了,自动完成功能不起作用。
这只是一个带有表格内联形式的问题!如果我在非表格管理员表单字段上使用Jannis' autocomplete example,它的工作正常,因为字段名称在HTML和javascript中没有“..._set-[index]-...
”部分。
不是向django的源代码提交修补程序,而是更改contrib.forms.forms.py
和contrib.forms.formsets.py
下划线的破折号,而是我发现可能会以某种方式覆盖行为。
如果不这样做,那么在html_name中使这些短划线变成下划线的最简单方法是什么呢?
提前致谢!
答案 0 :(得分:0)
Paolo和Guðmundur是对的。我根据Guðmundur的建议在javascript中修改了我的用法,现在事情按预期工作 - 不需要django干预。
抱歉精神失误......
谢谢!