我正在使用django-uni-form使用过滤器my_form | as_uni_form来设置我的表单样式:
<form class="uniForm" id="my_form" method="post" action="./">
<fieldset class="inlineLabels">
{{ my_form|as_uni_form }}
<div class="form_block">
<input type="submit" value="Submit"/>
</div>
</fieldset>
</form>
看起来真的很棒。但我需要自定义它。
例如,表单的字段“百分比”之一是IntegerField类型。它呈现为<input type="text">
。问题是文本框真的很宽,我想让它只有2个字符宽。此外,我想在文本框后面添加一个百分号“%”,以便用户知道他们是否在文本框中输入数字“10”,这意味着10%。
有没有用django-uni-form做到这一点?
感谢您的帮助。
答案 0 :(得分:0)
您需要循环遍历表单元素并自行呈现uniForm标记。或者,您可以根据ID或类自定义每个输入的外观。
我要做的是查看它生成的标记,然后遍历生成相同标记的元素并自定义它们。有关详细信息,请参阅the Django docs。
答案 1 :(得分:0)
我和你的问题一样。我认为文本输入的长度很容易通过CSS更改。我更关心输入背后的自定义html元素,在你的情况下百分比标记。我找不到一个简单的解决方案。看起来我们必须模仿在django-uni-form模板中呈现字段的方式或者编写我们自己的过滤器。我还在等待一个更优雅的解决方案。