【问题标题】:Can i customise my crispy form in template?我可以在模板中自定义我的脆表吗?
【发布时间】:2021-08-04 13:16:28
【问题描述】:

我需要在每个标签标签之后添加启用输入的按钮,所以我可以在模板中以某种方式做到这一点吗? 那我可以转这个吗

    <form method="POST" action="/guide_register/" class="guide_register col-md-4">
      {% csrf_token %}
      {%crispy form%}
    </form>

变成这样的

<form action="/profile/"  method="POST">
            {% csrf_token %} 
            {% for field in form %}
            <div class="form-row">
                {{field.label_tag}}
                <i class="fas fa-pen"></i>
                {{field}}

            </div>
            {% endfor %}
            <br>
            <div class="form-row">
            <input type="submit" value="Підтвердити" class="btn btn-primary">
            <input type="reset" class=" btn btn-secondary" value="Відмінити">
            </div>
        </form>

但很脆

【问题讨论】:

  • 我可以用 js 做到这一点,但这不是很优雅的方式

标签: django django-forms django-crispy-forms


【解决方案1】:

是的,您可以这样做。您必须在forms.py 中进行操作。例如,我有一个帖子的表单。

class PostForm(forms.ModelForm):
    class Meta():
        model = models.Post
        fields = ('body', 'image')

现在例如我想改变这个表单的正文输入的占位符,我可以这样做:

class PostForm(forms.ModelForm):

    body = forms.CharField(
        widget = forms.Textarea(attrs={
        'placeholder':'Share something with the world!'
        })
    )

    class Meta():
        model = models.Post
        fields = ('body', 'image')

小部件是 Django 对 HTML 输入元素的表示。小部件处理 HTML 的呈现,以及从与小部件对应的 GET/POST 字典中提取数据。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-24
    • 1970-01-01
    • 2021-11-11
    • 2013-08-01
    • 2021-11-23
    • 1970-01-01
    • 2020-12-24
    相关资源
    最近更新 更多