Django:在带有前缀的模板中显示表单名称
Posted
技术标签:
【中文标题】Django:在带有前缀的模板中显示表单名称【英文标题】:Django: Display form name in template with prefix 【发布时间】:2013-08-10 00:40:52 【问题描述】:我已经四处寻找这个问题的答案一段时间了,但没有成功。 我基本上想获取包含前缀的表单字段的名称。有谁知道怎么做?
例子:
假设我在 views.py 中创建了一个表单并包含这样的前缀:
myform = SomeForm(prefix="prefix")
然后将其传递给我的模板。如果我然后直接访问模板中的表单字段,我会通过 myform.username 得到类似的东西(注意包含前缀):
<select id="id_prefix-username" name="prefix-username"> ...
如果我想手动创建表单标签并插入名称,那么我不会得到前缀:
<input name=" myform.username.name ">
将生成:
<input name="username">
注意它现在是如何缺少前缀的。现在,我可以这样做以达到相同的结果:
<input name=" myform.prefix - myform.username.name ">
但是必须有一个内置的方法来做到这一点?
【问题讨论】:
myform.prefix - myform.username.name
在我看来没问题。
为其创建自定义模板标签。
没有。没有内置的方法可以做到这一点。您必须像@dan-klasson 所说的那样编写自定义标签,或者像您所做的那样手动添加前缀。
【参考方案1】:
您可以使用 html_name 代替:
<input name=" myform.username.html_name ">
应该根据需要添加前缀
【讨论】:
以上是关于Django:在带有前缀的模板中显示表单名称的主要内容,如果未能解决你的问题,请参考以下文章