python – 更改默认的Django消息标记
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – 更改默认的Django消息标记,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1971字,纯文字阅读大概需要3分钟。
内容图文
![python – 更改默认的Django消息标记](/upload/InfoBanner/zyjiaocheng/796/0d393b9e906a49eda6d738e1f64354be.jpg)
默认情况下,messages.success输出class =’success’.我需要覆盖它,删除它或将我的标签附加到它以满足我的需要.我找不到覆盖和追加它的方法一直没有成功.在这里,我试图使用extra_tags …
views.py
messages.success(request, '<a href="#">Item</a> Saved', extra_tags='html_safe alert alert-')
detail.html
我已尝试在{{message.tags}}之前添加提醒.
{% if messages %}
<ul class='messages'>
{% for message in messages %}
<li{% if message.tags %} class='{{ message.tags }}' role='alert'{% endif %}>{% if 'html_safe' in message.tags %}{{ message|safe }}{% else %}{{ message }}{% endif %}</li>
{% endfor %}
</ul>
{% endif %}
Bootstrap Alerts期望class =’alert alert-success’
<div class="alert alert-success" role="alert">
<strong>Well done!</strong> You successfully read this important alert message.
</div>
HTML页面源结果
执行上述所有代码后,源代码将输出以下内容.现在唯一的问题是警报和成功之间的空间.
<ul class='messages'>
<li class='html_safe alert alert- success' role='alert'><a href="#">Item</a> Saved</li>
</ul>
结束目标! – 任何人都可以在这里看到一个hacky或正确的解决方法吗?
<li class="html_safe alert alert-success" role="alert"><a href="#">Item</a> Saved</li>
解决方法:
我不明白为什么有理由将其删除.未使用的CSS类并不是一件可怕的事情.将其更改为:
messages.success(request, '<a href="#">Item</a> Saved', extra_tags='html_safe alert alert-success')
并且不要担心额外的成功班级.你有没有检查过Django的源代码?有时它给出了可以通过的额外kwargs的提示.最终结果将是:
<li class="html_safe alert alert-success success" role="alert"><a href="#">Item</a> Saved</li>
似乎还有configure the default message tags的方法.
例如,在settings.py中:
from django.contrib.messages import constants as messages
MESSAGE_TAGS = {
messages.SUCCESS: 'alert alert-success',
}
但是一些Django项目和文档可能会认为这里的标记是成功的,默认的,所以只有在你确信它是你需要的时候才改变它.否则,只需将Bootstrap类添加为额外标记即可.真的,你不应该只是为了适应Bootstrap而覆盖Django的默认值.要么在customization期间将Bootstrap的成功等级改为成功,要么只使用两者.
内容总结
以上是互联网集市为您收集整理的python – 更改默认的Django消息标记全部内容,希望文章能够帮你解决python – 更改默认的Django消息标记所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。