在 Django 中使用 crsipy 表单的消息框样式
Message box styling using crsipy form in Django
表单提交成功后,我想显示一个漂亮的绿色框来显示成功消息。
代码在views.py-
upload.save()
success = True
messages.success(request, 'Result Uploaded Successfully.')
在html文件中-
{% if messages %}
<ul class="messages">
{% for message in messages %}
<li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message }}</li>
{% endfor %}
</ul>
{% endif %}
它显示为项目符号列表。
settings.py--
CRISPY_TEMPLATE_PACK = "bootstrap3"
如果有任何错误,则显示为红色框,但不会显示表单提交成功消息。
非常感谢任何帮助。提前致谢。
消息样式与 django-crispy-forms 无关。这是你需要自己做的事情。
这是与 bootstrap 3 一起使用的片段,我将其用于我的项目以正确显示 django 消息:
{% for message in messages %}
<div class="alert fade in {% if message.tags %} alert-{% if 'error' in message.tags %}danger{% else %}{{ message.tags }}{% endif %}{% endif %}">
<a class="close" href="#" data-dismiss="alert">×</a>
{{ message }}
</div>
{% endfor %}
所以你需要使用 div 而不是 li 并将其 class 更改为 alert alert-{{ message.tags }}
(这将是危险,成功等)。请注意,bootstrap 3 需要 class 名称 alert-danger
来显示错误样式(红色边框),而 django 消息 return 错误 message.tags
中的错误,这就是为什么我在那里有 {% if %}
的原因。
表单提交成功后,我想显示一个漂亮的绿色框来显示成功消息。
代码在views.py-
upload.save()
success = True
messages.success(request, 'Result Uploaded Successfully.')
在html文件中-
{% if messages %}
<ul class="messages">
{% for message in messages %}
<li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message }}</li>
{% endfor %}
</ul>
{% endif %}
它显示为项目符号列表。
settings.py--
CRISPY_TEMPLATE_PACK = "bootstrap3"
如果有任何错误,则显示为红色框,但不会显示表单提交成功消息。
非常感谢任何帮助。提前致谢。
消息样式与 django-crispy-forms 无关。这是你需要自己做的事情。
这是与 bootstrap 3 一起使用的片段,我将其用于我的项目以正确显示 django 消息:
{% for message in messages %}
<div class="alert fade in {% if message.tags %} alert-{% if 'error' in message.tags %}danger{% else %}{{ message.tags }}{% endif %}{% endif %}">
<a class="close" href="#" data-dismiss="alert">×</a>
{{ message }}
</div>
{% endfor %}
所以你需要使用 div 而不是 li 并将其 class 更改为 alert alert-{{ message.tags }}
(这将是危险,成功等)。请注意,bootstrap 3 需要 class 名称 alert-danger
来显示错误样式(红色边框),而 django 消息 return 错误 message.tags
中的错误,这就是为什么我在那里有 {% if %}
的原因。