Django Messaging Framework 中的 save() 函数
Django Messaging Framework in the save() function
我正在检查模型实例是否已经存在,以及我是否要发送一条消息说“名称已经存在”。由于def save()中没有request,有没有其他方法可以通过Django消息框架或其他方式发送消息??
def save(self, *args, **kwargs):
self.name = self.name
if Name.names.name_exists(self.name):
message = "You already have this name!" # want to send this message
print("not created")
else:
print("created")
super(Name, self).save(*args, **kwargs)
是的,您可以将 django 消息框架与 messages.warning(request, 'Object already exists.')
一起使用,而不是 print
语句,并且根据您的逻辑而不是警告消息,您可以发送成功或信息消息。在您的模板中,您可以使用;
{% if messages %}
<ul class="messages">
{% for message in messages %}
<li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message }}</li>
{% endfor %}
</ul>
{% endif %}
但是这个选项将适用于您的视图层而不是模型层。不要忘记结帐 documentation.
我正在检查模型实例是否已经存在,以及我是否要发送一条消息说“名称已经存在”。由于def save()中没有request,有没有其他方法可以通过Django消息框架或其他方式发送消息??
def save(self, *args, **kwargs):
self.name = self.name
if Name.names.name_exists(self.name):
message = "You already have this name!" # want to send this message
print("not created")
else:
print("created")
super(Name, self).save(*args, **kwargs)
是的,您可以将 django 消息框架与 messages.warning(request, 'Object already exists.')
一起使用,而不是 print
语句,并且根据您的逻辑而不是警告消息,您可以发送成功或信息消息。在您的模板中,您可以使用;
{% if messages %}
<ul class="messages">
{% for message in messages %}
<li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message }}</li>
{% endfor %}
</ul>
{% endif %}
但是这个选项将适用于您的视图层而不是模型层。不要忘记结帐 documentation.