【发布时间】:2020-05-28 15:20:45
【问题描述】:
只有当模型从 django admin 保存时我才需要发送邮件,我正在尝试使用 sender.user.is_superuser 但我找不到具体方法
【问题讨论】:
标签: python django django-signals
只有当模型从 django admin 保存时我才需要发送邮件,我正在尝试使用 sender.user.is_superuser 但我找不到具体方法
【问题讨论】:
标签: python django django-signals
你不能用信号做到这一点,但你可以用你的ModelAdmin的save_model() method做到这一点。
例如:
from django.contrib import admin
from django.core.mail import send_mail
class MyModelAdmin(admin.ModelAdmin):
def save_model(self, request, obj, form, change):
super().save_model(request, obj, form, change)
send_mail(...)
【讨论】:
Accessing the user's request in a post_save signal
“做不到。当前用户只能通过请求获得,在使用纯模型功能时不可用。以某种方式访问视图中的用户。”
“Django 的模型信号旨在通知其他系统组件与实例相关的事件及其尊重的数据”
【讨论】: