【问题标题】:How to configure fields in Django forms.Form?如何在 Django forms.Form 中配置字段?
【发布时间】:2021-05-25 01:04:05
【问题描述】:

我正在学习 Django 和 Web 开发,但在配置 Django forms.Form 中的字段以使它们正确显示时遇到了困难。以下是我的代码:

即使我在 forms.Textarea 中调整我的 attrs 行和列,也没有任何区别。另外,我在 CSS 中放什么似乎并不重要,输出仍然是一样的。

class NewPageForm(forms.Form):
    title = forms.CharField(label="Title", max_length=100, widget=forms.TextInput)
    content = forms.CharField(label="Content", widget=forms.Textarea(attrs{"rows":3,"cols":10}))

我的html:

{% block body %}    
    <div class="form">
        <form action="{% url 'create' %}" method="post">
            {% csrf_token %}
            {{ form.as_p }}
            <input type = submit>
        </form>
    </div>
{% endblock %}

它的样子:

请指教。

【问题讨论】:

    标签: python django


    【解决方案1】:

    你可以试试:

    content = forms.CharField(label=False, widget=forms.Textarea(attrs={'rows': 3}))
    

    甚至添加一个 CSS 类来自定义它:

    content = forms.CharField(label=False, widget=forms.Textarea(attrs={'class': 'form-control', 'rows': 3}))
    

    【讨论】:

    • 你能展示一下我会在 CSS 中做什么吗?我改变attrs中的行也没关系,没有区别。
    • 就我而言,我使用引导 css 框架,但是,您的问题可能是您应该使用“attrs={}”而不是“attrs{} 查看我的示例:github.com/infantiablue/tweeter/blob/main/network/forms.py
    • 哦,你可能需要重置 CSS,一些默认设置可能会覆盖表单上的 django 设置
    • 如何重置 CSS?也许这就是为什么无论我在 CSS 中进行什么更新,都没有任何变化。
    • 你可以试试这个gist.github.com/DavidWells/18e73022e723037a50d6 但我建议你改用 CSS 框架。
    猜你喜欢
    • 2017-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-19
    • 2019-08-19
    • 1970-01-01
    • 2021-05-30
    • 2011-09-01
    相关资源
    最近更新 更多