带引导的django modelform

带引导的django modelform,django,twitter-bootstrap,twitter-bootstrap-3,django-forms,django-templates,Django,Twitter Bootstrap,Twitter Bootstrap 3,Django Forms,Django Templates,我想使用引导来格式化我的模型表单,而不需要任何额外的包(仅使用引导源文件)。我要配置的特定表单: class FoodForm(forms.ModelForm): class Meta: model = Food fields = ['name', 'company'] exclude = ('user', 'edit') “name”是一个文本字段,我想成为引导文本字段,“company”是一个选择字段(来自外键),我想成为引导下拉列

我想使用引导来格式化我的模型表单,而不需要任何额外的包(仅使用引导源文件)。我要配置的特定表单:

class FoodForm(forms.ModelForm):

    class Meta:
        model = Food
        fields = ['name', 'company']
        exclude = ('user', 'edit')
“name”是一个文本字段,我想成为引导文本字段,“company”是一个选择字段(来自外键),我想成为引导下拉列表

表单模板的当前设置:

    {% extends "mainsite/base.html" %}

    {% block content %}

    <form method="POST" class="post-form">{% csrf_token %}
        {{ form.as_p }}
        <button type="submit" class="btn btn-primary">Save</button>
</form>
    </form> 

    {% endblock %}
{%extends“mainsite/base.html”%}
{%block content%}
{%csrf_令牌%}
{{form.as_p}}
拯救
{%endblock%}

将任何django modelform字段格式化为引导的最佳实践是什么?

引导字段的诀窍是将
表单控件
类注入每个字段,并确保每个字段位于
表单组
dom元素中。要将该类注入到每个字段中,可以执行以下操作:

class FoodForm(forms.ModelForm):
    def __init__(self, *args, **kwargs):
        super(FoodForm, self).__init__(*args, **kwargs)
        for field in iter(self.fields):
            self.fields[field].widget.attrs.update({
                'class': 'form-control'
        })
现在,在django模板中,您可以迭代表单字段,将每个字段放入引导的
表单组中。例如:

<form method="POST" class="post-form">
    {% for field in form %}
    <div class="form-group">
        {{ field }}
    </div>
    {% endfor %}
</form>

{%形式的字段为%}
{{field}}
{%endfor%}
我还想说,这种设置(Django+引导)现在已经非常普遍了,所以通过谷歌搜索“使用Django的引导表单”应该可以获得更多关于进一步定制的知识。祝你好运

简单地使用
这是相当简单和直接的

为什么不使用酥脆的表单呢?我知道你提到你想使用香草引导,但这似乎没有必要,因为脆的形式是相当轻的重量。