Python Django如何获取管理员全名

Python Django如何获取管理员全名,python,html,django,Python,Html,Django,我有一个名为Post的模型,希望自动保存创建(或编辑)该帖子的管理员的全名。 我在django文档中读到了get_full_name(),但我不明白如何调用这个方法。 这是我的海报模型 class Post(models.Model): post_id = models.AutoField postname = models.CharField(max_length=50) description = models.CharField(max_length=1000)

我有一个名为Post的模型,希望自动保存创建(或编辑)该帖子的管理员的全名。 我在django文档中读到了get_full_name(),但我不明白如何调用这个方法。 这是我的海报模型

class Post(models.Model):
    post_id = models.AutoField
    postname = models.CharField(max_length=50)
    description = models.CharField(max_length=1000)
    location = models.CharField(max_length=30)
    user = // I want to store the logged in admin full name here
尝试以下步骤

  • 创建一个中间件,将当前用户的上下文存储到本地线程。将此中间件添加到“设置”中“中间件”列表的底部
  • 导入线程
    local=threading.local()
    类基础中间件(对象):
    定义初始化(自我,获取响应):
    self.get\u response=get\u response
    定义呼叫(自我,请求):
    local.user=request.user
    响应=自我获取响应(请求)
    返回响应
    
  • 使用本地线程获取当前用户并将其存储在db white创建和更新帖子中
  • 
    从.中间件导入本地
    班级职务(models.Model):
    post_id=models.AutoField
    postname=models.CharField(最大长度=50)
    description=models.CharField(最大长度=1000)
    位置=型号.CharField(最大长度=30)
    创建人=models.ForeignKey(
    用户,
    在_delete=models.CASCADE上,
    相关的\u名称=“%(类)由用户创建的\u”,
    )
    更新人=models.ForeignKey(
    用户,
    在_delete=models.CASCADE上,
    相关_name=“%(类)s_已由_用户更新”,
    )
    def保存(自身、*args、**kwargs):
    如果(
    self.pk是None
    和hasattr(本地“用户”)
    和local.user.\uuuuu class\uuuu!=匿名用户
    ):
    self.created_by=local.user
    埃利夫(
    self.pk
    和hasattr(本地“用户”)
    和local.user.\uuuuu class\uuuu!=匿名用户
    ):
    self.updated_by=local.user
    return super().save(*args,**kwargs)
    
    试试django信号