现场标签脆形Django
我想对两个表单使用相同的模型并更改字段的标签如何更改标签 这是我的一张表格:现场标签脆形Django,django,django-forms,django-crispy-forms,Django,Django Forms,Django Crispy Forms,我想对两个表单使用相同的模型并更改字段的标签如何更改标签 这是我的一张表格: class jobpostForm(forms.ModelForm): class Meta: model = jobpost fields = ('job_type','title','company_name','location','country','description','start_date','end_date','how_to_apply') w
class jobpostForm(forms.ModelForm):
class Meta:
model = jobpost
fields = ('job_type','title','company_name','location','country','description','start_date','end_date','how_to_apply')
widgets = {
'job_type':RadioSelect(),
'location':TextInput(attrs={'size':'70','cols': 10, 'rows': 20}),
'description': TinyMCE(attrs={'cols':'100', 'row': '80'}),
'start_date':AdminDateWidget(attrs={'readonly':'readonly'}),
'end_date':AdminDateWidget(attrs={'readonly':'readonly'}),
'how_to_apply':RadioSelect(),
}
def __init__(self, *args, **kwargs):
super(jobpostForm, self).__init__(*args, **kwargs)
self.helper = FormHelper()
self.helper.form_class = 'horizontal-form'
self.helper.form_id = 'id-jobpostform'
self.helper.form_class = 'blueForms'
self.helper.form_method = 'post'
self.helper.form_action = '/portal/next/post/'
self.helper.add_input(Submit(_('submit_addcontent'), 'Preview'))
super(jobpostForm, self).__init__(*args, **kwargs)
就像我想把“地点”改为“工作地点”……我该怎么做?这个问题并不是Django Crispy表单所特有的 一个选项是在函数的
init()
方法中设置标签
在处理此类问题时,一本好读物是。有一种更简单的方法可以做到这一点。请参见下面的示例:
class CreateAPIKey(forms.ModelForm):
类元:
模型=APIKey
字段=[“客户端id”]
标签={
“客户id”:“Nome da密钥”,
}
帮助_文本={
“客户id”:_(
“Um identicador exclusive de format o livre da chave.50克拉无máximo”
),
}
小部件={
“客户端id”:forms.TextInput(
属性={
“id”:“密钥id”,
“必需”:正确,
“占位符”:“Entre um nomeúnico para a chave”,
“标签”:“dasdasd”,
}
),
}
然后,在模板上呈现表单:
{%csrf_令牌%}
{%形式的字段为%}
{{field | as_crispy_field}
{%endfor%}
结果:
我正在这样做,但它没有改变label您如何在模板中显示表单(字段)?为未来的读者显示整个表单,如{%crispy form%}:我遇到了同样的问题,我解决了它,确保
self.fields['location']。label=“Job location”
设置在super(JobPostForm,self)之后。\u init__(*args,**kwargs)
@arie的答案对我很有用。
def __init__(self, *args, **kwargs):
super(JobPostForm, self).__init__(*args, **kwargs)
self.fields['location'].label = "Job Location"