调整DJango中表单元素的CSS / html

时间:2015-02-27 19:25:16

标签: html css django forms

在django工作时试图教自己一些CSS并且已经撞墙了。我是团队的一员。我一直在使用以下表单提交数据(工作正常),但一直无法更改表单元素的CSS(特别是文本框)

<div class="fieldWrapper">
  {{ form.description.errors }}
  <label for="{{ form.title.id_for_label }}"></label>
  {{ form.description }}
</div>

鉴于上面的代码,我认为我需要操作的元素以及控制屏幕上文本框的元素是{{form.description}}。但我似乎无法弄清楚如何应用任何更改,至少从模板页面。

我已经在使用输入标记的教程中看到了这一点,我看到人们使用小部件来编辑属性,但我不想太多地更改配置,并且我的小部件实现没有'工作。

这是可能的,还是我需要深入研究代码并编辑控制它的表单类?

由于

1 个答案:

答案 0 :(得分:0)

您可以从django表单类执行此操作。

https://docs.djangoproject.com/en/1.7/ref/forms/widgets/#styling-widget-instances

class CommentForm(forms.Form):
    name = forms.CharField(widget=forms.TextInput(attrs={'class': 'special'}))

如果说它是一个模型并且你没有手动实例化字段,你可以像往常一样覆盖__init__并修改

self.fields['my_field'].widget.attrs['class'] = 'my-class'

您也可以手动构建HTML,而不是依赖于表单字段自动渲染,就像使用标签一样。