django用户更新_字段未显示在信号中

django用户更新_字段未显示在信号中,django,signals,Django,Signals,我使用django信号在创建用户时自动创建用户配置文件, 而且工作很好, 但我还想检查用户是否试图更新他的“用户名、电子邮件或……等等” 我试图在信号中检查这些值,但总是 “更新字段”值为无 '正如您在下面的代码块中所看到的' # create profile automatically when the user is created using (signal) ## def create_profile(sender , **kwargs): if kwargs['created']:

我使用django信号在创建用户时自动创建用户配置文件, 而且工作很好, 但我还想检查用户是否试图更新他的“用户名、电子邮件或……等等” 我试图在信号中检查这些值,但总是 “更新字段”值为无

'正如您在下面的代码块中所看到的'

# create profile automatically  when the user is created using (signal) ##
def create_profile(sender , **kwargs):
if kwargs['created']:
    Profile.objects.create(PRF_user=kwargs['instance'])

if kwargs['update_fields']:
    print ('some table are updated this is a test')

print('all kwargs')
print(kwargs)
print('end kwargs')

   #done create profile automatically  ##

post_save.connect(create_profile , sender=User)

outprint
所有夸尔格人
{'signal':,
'instance':,'created':False,'update_fields':否
ne,‘原始’:False,‘使用’:‘默认’}
克瓦尔格终点

我如何告诉django填充“update_fields”值并通过信号将其发送到我的函数

你误解了你的目的。它们用于限制应更新字段的范围,并设置更新字段强制更新查询

如果您想知道更新了哪些字段,应该手动检查旧的数据库实例字段和要设置的字段。Django无法回忆已更新的字段

outprint
all kwargs
{'signal': <django.db.models.signals.ModelSignal object at 0x00000000037D2780>,
'instance': <User: khder_admin@local.com>, 'created': False, 'update_fields': No
ne, 'raw': False, 'using': 'default'}
end kwargs