【问题标题】:HTML5 form attributes with Django forms and django-bootstrap-toolkit带有 Django 表单和 django-bootstrap-toolkit 的 HTML5 表单属性
【发布时间】:2013-07-04 08:21:06
【问题描述】:

在带有django-bootstrap-toolkitDjango 1.5 应用程序中,我希望得到以下html 结果:

<div class="input-append">
    <input class="span2" type="number" id="offer_finance_vat" min="0" max="99" value="20">
    <span class="add-on">%</span>
</div>

重要的是附加的“%”以及type="number"minmax

这是我的表单代码:

class FinanceForm(forms.Form):

    vat = forms.DecimalField(
        decimal_places=0,
        label="Value added tax",
        widget=BootstrapTextInput(append="%"),
        initial=0,
        min_value=0,
        max_value=99
    )

但是在 html 中,typeminmax 都不见了。

还有机会获得step="2" 属性吗?

crispy-forms 可以做到这一点吗?

【问题讨论】:

    标签: django html twitter-bootstrap django-1.5 django-crispy-forms


    【解决方案1】:

    您可以设置widget.attrs 的值以将某些其他HTML 属性传递给表单。

    >>> from django import forms
    >>> name = forms.TextInput(attrs={'size': 10, 'title': 'Your name',})
    >>> name.render('name', 'A name')
    u'<input title="Your name" type="text" name="name" value="A name" size="10" />'
    

    -Django 文档

    【讨论】:

    • 是的,这行得通!但不是很干(我必须放两次最小值/最大值)。有更好的解决方案吗?
    • 我对 Bootstrap Django 工具包不太熟悉。您是否必须将 maxminwidget.attrs 分开?
    猜你喜欢
    • 2016-07-30
    • 2011-02-22
    • 2012-10-10
    • 2017-01-02
    • 2013-03-04
    • 2017-01-04
    • 2017-07-06
    • 2011-01-18
    • 2012-02-22
    相关资源
    最近更新 更多