gpt4 book ai didi

python - Django 使用 crispy 表单用 css 渲染表单字段

转载 作者:太空宇宙 更新时间:2023-11-03 17:55:37 27 4
gpt4 key购买 nike

我有一个表单,我想用脆的形式渲染,

表格

class MyForm(forms.ModelForm):

class Meta:
model = MyModel
excludes = ('user', 'created')

def __init__(self, *args, **kwargs):


self.helper = FormHelper()
self.helper.form_show_labels = False ## I only need the input field
self.helper.layout = layout.Layout(

layout.Field('name', css_class="form-control"),
layout.Field('objective', css_class="form-control"),
## ADD CLASS form-control TO THE FIELDS (This is the problem since the fields are not rendered with the class)
)
super(MyForm, self).__init__(*args, **kwargs)

模板

<div class="form-group">
<label>Name <i class="fa fa-question-circle tooltips" data-original-title="Lorem Ipsum" data-html="true" data-placement="right" data-container="body"></i></label>
{{ form.name|as_crispy_field }}
{{ form.name.errors|striptags }}
</div>
<div class="form-group">
<label>Theme/ Objective <i class="fa fa-question-circle tooltips" data-original-title="Lorem Ipsum" data-html="true" data-placement="right" data-container="body"></i></label>
{{ form.objective|as_crispy_field }}
{{ form.objective.errors|striptags }}
</div>

这些字段不是用 form-control 类呈现的。标签已渲染,我不需要它们,因为我有自定义标签。任何有关如何使用类渲染字段的帮助将不胜感激。谢谢。

最佳答案

如果您手动渲染字段,您可以添加它们,如下所示:

<input type="text" name="{{ form.objective.html_name }}" 
id={{ form.objective.id_for_label }}"
class="form-control">

请注意,这将要求您手动渲染所有输入

关于python - Django 使用 crispy 表单用 css 渲染表单字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28500426/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com