用户在 Django 中注册时如何触发功能?
How can I trigger a function when a user registers in django?
我接管了一个 django 网络应用程序,对 django 还是比较陌生。每当新用户在网站上注册时,我想触发一个功能。但是项目中没有代码来处理用户注册。这一切似乎都发生在幕后。所以我不知道在哪里可以放置这样的函数调用。 Web 应用程序使用 django.contrib.auth
.
另外:账号激活后如何触发功能?
当您在数据库中保存任何内容时,您可以使用信号触发事件,包括来自 auth 的用户。关于这个你可以看the django doc
对于您的情况,我认为最好的方法是:
from django.db.models.signals import post_save
from django.dispatch import receiver
from django.contrib.auth.models import user
@receiver(post_save, sender=User)
def user_saved(sender, instance, **kwargs):
...
在 kwargs 中,您可以看到,例如,是否创建或修改了对象。发件人是Class,实例是对象。
我接管了一个 django 网络应用程序,对 django 还是比较陌生。每当新用户在网站上注册时,我想触发一个功能。但是项目中没有代码来处理用户注册。这一切似乎都发生在幕后。所以我不知道在哪里可以放置这样的函数调用。 Web 应用程序使用 django.contrib.auth
.
另外:账号激活后如何触发功能?
当您在数据库中保存任何内容时,您可以使用信号触发事件,包括来自 auth 的用户。关于这个你可以看the django doc
对于您的情况,我认为最好的方法是:
from django.db.models.signals import post_save
from django.dispatch import receiver
from django.contrib.auth.models import user
@receiver(post_save, sender=User)
def user_saved(sender, instance, **kwargs):
...
在 kwargs 中,您可以看到,例如,是否创建或修改了对象。发件人是Class,实例是对象。