Django,每当我刷新页面时,而不是需要时,都会出现引导toast
我想让祝酒词仅在处理文件后出现。 目前,我从model.py检查是否存在另一个文件。 如果是,则文件已被处理。否则就不行了Django,每当我刷新页面时,而不是需要时,都会出现引导toast,django,bootstrap-toast,Django,Bootstrap Toast,我想让祝酒词仅在处理文件后出现。 目前,我从model.py检查是否存在另一个文件。 如果是,则文件已被处理。否则就不行了 def status(self): if os.path.exists(...)): return "processed" else: return "unprocessed" 我不确定从model.py检查是否正确 至于我的HTML文件,我设置了以下内容 {% for td in u
def status(self):
if os.path.exists(...)):
return "processed"
else:
return "unprocessed"
我不确定从model.py检查是否正确
至于我的HTML文件,我设置了以下内容
{% for td in user.userlist.all %}
{% if td.status == 'processed' %}
<div class="toast" drole="alert" data-autohide="false" ... >
<div class="toast-header">
<strong class="mr-auto">{{ td.status }}</strong>
<small class="text-muted">just now</small>
<button type="button" class="ml-2 mb-1 close" data-dismiss="toast" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="toast-body">
The file was {{ td.status }}
</div>
</div>
{% endif %}
{% endfor %}
在HTML文件上,必须将其从for循环中删除
{% if messages %}
<ul class="messages">
{% for message in messages %}
<div class="toast" drole="alert" data-autohide="false" ... >
<div class="toast-header">
<strong class="mr-auto">Processed</strong>
<small class="text-muted">just now</small>
<button type="button" class="ml-2 mb-1 close" data-dismiss="toast" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="toast-body">
{{ message }}
</div>
</div>
{% endfor %}
</ul>
{% endif %}
{%if消息%}
{消息%中的消息为%s}
已处理
刚才
&时代;
{{message}}
{%endfor%}
{%endif%}
您可以使用内置的屏幕来显示祝酒词,这将让您更好地控制何时以及显示什么
您只需在视图中添加消息:
messages.success(request, 'File processed')
然后在模板中显示消息。您甚至可以将显示组件的消息包含在基本模板中,并在所有不同的视图中使用相同的组件。我使用这样的方法(您需要根据引导的具体情况进行调整):
{消息%中的消息为%s}
{%if message.level==DEFAULT_message_LEVELS.ERROR%}哎哟强>{%endif%}
{{message}}
{%endfor%}
{%block toast_messages%}{%endblock toast_messages%}
您可以使用内置的屏幕来显示祝酒词,这将让您更好地控制何时以及显示什么
您只需在视图中添加消息:
messages.success(request, 'File processed')
然后在模板中显示消息。您甚至可以将显示组件的消息包含在基本模板中,并在所有不同的视图中使用相同的组件。我使用这样的方法(您需要根据引导的具体情况进行调整):
{消息%中的消息为%s}
{%if message.level==DEFAULT_message_LEVELS.ERROR%}哎哟强>{%endif%}
{{message}}
{%endfor%}
{%block toast_messages%}{%endblock toast_messages%}
谢谢Joseba S。我的解决方案可能有点不同,但这非常有助于将我推向正确的方向。请注意,if messages.tags
是不需要的,因为Django不会用任何东西代替未设置的variable@artu-hnrq,你说得对!我更新了帖子以反映:)谢谢Joseba S。我的解决方案可能有点不同,但这非常有助于将我推向正确的方向。请注意,if messages.tags
是不需要的,因为Django不会用任何东西代替未设置的variable@artu-hnrq,你说得对!我更新了帖子以反映这一点:)
<div class="toast-messages" id="main-toasts">
{% for message in messages %}
<div class="toast {{ message.tags }}" role="alert">
{% if message.level == DEFAULT_MESSAGE_LEVELS.ERROR %}<strong>Ouch!</strong> {% endif %}
{{ message }}
</div>
{% endfor %}
{% block toast_messages %}{% endblock toast_messages %}
</div>