我在 github 上使用 django-custom-user 应用程序:https ://github.com/recreatic/django-custom-user
我有一个定义的信号:
@receiver(post_save, sender=EmailUser)
def user_saved(sender=None, **kwargs):
print("Request finished!")
user = kwargs["instance"]
if kwargs["created"]:
blah = Blah(user=get_user_model(), name="None")
blah.save()
现在我收到错误:无法分配“”:“Blah.user”必须是“EmailUser”实例。这个错误是有道理的,因为在 github 描述中它说要获取特定的电子邮件地址:
user = get_user_model().get(email="user@example.com")
我的问题是......鉴于这种情况,我怎样才能获得刚刚创建的用户?好像我没有刚刚登录的用户的电子邮件地址?我正在通过 django admin 顺便说一句。这在视图中是同义词,您可以使用 request.user。但我假设我现在不能这样做。
有人可以解释信号中这些回调中的参数是什么吗?这个回调函数有一个任意名称 user_saved,但不知何故它得到参数“sender”和“kwargs”。它们来自哪里,我在哪里可以找到这些回调的参数列表?