django post_save如何获取当前用户信息
时间: 2023-08-22 16:08:33 浏览: 124
Django如何使用jwt获取用户信息
要在 Django 的 post_save 信号中获取当前用户信息,你需要在视图函数中获取当前用户信息,然后将其传递给模型实例。以下是一些示例代码,演示了如何在 post_save 信号中获取当前用户信息:
```python
from django.db.models.signals import post_save
from django.contrib.auth.models import User
from django.dispatch import receiver
from myapp.models import MyModel
@receiver(post_save, sender=MyModel)
def mymodel_post_save(sender, instance, created, **kwargs):
# 获取当前用户信息
current_user = User.objects.get(id=instance.user_id)
# 将其传递给模型实例
instance.user = current_user
instance.save()
```
在这个例子中,我们假设 MyModel 模型有一个外键字段 user,用于存储创建该模型实例的用户。在 post_save 信号的处理函数中,我们获取当前用户信息,并将其传递给 MyModel 实例的 user 字段。
阅读全文