Django小部件 - 将类添加到字段
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django小部件 - 将类添加到字段相关的知识,希望对你有一定的参考价值。
我试图在django ModelForm
中添加类到我的输入,如下所示:
from django import forms
from .models import OrderProject
class OrderProjectForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(OrderProjectForm, self).__init__(*args, **kwargs)
for field in self.fields:
if field.widget.__class__ == forms.widgets.TextInput:
if 'class' in field.widget.attrs:
field.widget.attrs['class'] += 'project-form__input'
else:
field.widget.attrs.update({'class':'project-form__input'})
class Meta:
model = OrderProject
fields = ('name', 'customer', 'area', 'status', 'budget', 'opening_date',
'ending_date',)
不幸的是我收到了错误:'str' object has no attribute 'widget'
我有什么想法我做错了吗?
答案
form.fields
是一个dict
,其中字段的名称为键,表单字段为值。因此,迭代它会产生字符串。改变如下:
for name, field in self.fields.items():
# stuff with field.widget
或者简单地说(如果'stuff'不涉及名称,就像你的代码片段中的情况一样):
for field in self.fields.values():
# stuff with field.widget
以上是关于Django小部件 - 将类添加到字段的主要内容,如果未能解决你的问题,请参考以下文章