16
|
Gabriel Hurley · 技术社区 · 15 年前 |
![]() |
1
-19
如果您使用的是jquery,那么应该使用以下技巧: 你的形式
要添加到模板中的javascript代码
如果您将窗体呈现为一个表,那么这将起作用。如果要使其适用于任何类型的表单呈现,可以执行以下操作:
并添加
如果您像这样呈现您的表单:
您的上下文必须包括:
你明白了… |
![]() |
2
38
奥卡鲁姆说得对。你不应该在客户那边清理这个。如果它是杂乱的,那么您根本不应该将它发送给客户机。基于Oraclum的答案,您应该使用自定义表单模板,因为您可能仍然想要表单中的隐藏值。
使用自定义表单模板来控制隐藏字段更干净,因为它不会向客户端发送无关信息。 |
![]() |
3
36
我不敢相信有几个人建议使用jquery来解决这个问题… 这是一个例子吗:当你知道的唯一工具是锤子时,所有东西看起来都像钉子? 拜托,如果您打算从客户端(而不是在后端代码中修复问题的源代码)执行此操作,那么在CSS中执行此操作的位置肯定是正确的? 如果你在管理网站,那就有点难了,但是如果它是一个常规页面,那么很容易忽略表单模板中的整个标签, for example 如果您在管理站点中,那么您仍然可以将galleryAdminForm类中的as_表、as_l、as_l、as_p方法重写为baseForm(请参见django/forms/forms.py),以省略标签为空的任何字段的标签(或=':'因为值可能在呈现的这个阶段)。 (…查看第160-170行 forms.py 似乎django 1.2应该适当地省略“:”,如果标签是空白的,那么我猜您是在旧版本上吗?) |
![]() |
4
17
尝试 %表示窗体中的字段。可见的_字段% |
![]() |
5
3
我认为通过修改hiddeninput小部件来实现“:”标签省略更简单。
到:
|
![]() |
6
3
检查答案
Create a hidden field in the admin site
,可以在不使用javascript的情况下通过重写
|
![]() |
7
2
理论上,你应该能够通过
你在Django被两个虫子咬了: #18134 'BoundField.label_tag should include form.label_suffix' (固定在后备箱中,应在1.6)并在较小程度上 #11277 Hidden fields in Inlines are displayed as empty rows .
目前,最好的解决方案是重写管理字段集模板。使用A
|
![]() |
8
2
基于Wilfried Hughes的解决方案,我对fieldset.html进行了一些改进。 下面的代码段不仅隐藏了输入元素,而且如果字段集只包含一个输入类型设置为隐藏的元素,它还隐藏了表单中不浪费空间的周围DIV元素。
|
![]() |
9
0
下面将从所有表单字段中删除“:”。我只试过用
在Django窗体中,标签后面的“:”是
希望有帮助! |
![]() |
10
0
另一种方法,但我认为迭代form.visible&form.hidden\u字段更好
|
![]() |
Yuno · Django admin用户timein和用户超时 2 年前 |
![]() |
Proxy · Django admin添加自定义筛选器 7 年前 |
![]() |
MaxCore · 禁用django 2.0管理响应行为 7 年前 |
![]() |
Hameer Abbasi · 覆盖多个表格行的表单小部件和/或表单 7 年前 |
![]() |
Mark116 · 自定义django管理仪表板 7 年前 |