-1

我已经为 UserProfile 模型声明了一个信号,它更新了一些其他字段。存储的数据来自网络服务。

 post_save.connect(user_profile_update, sender=UserProfile)

在 user_profile_update 中,我这样做了:

 profile = get_object_or_404(UserProfile, user=instance) 
 profile.province = xml.duzeltilmisil #this comes from a web service
 profile.save()

我得到了这个错误:

 'NoneType' object is not callable
 profile.save()

还有一个错误,但我所做的也是递归的。当我更新 UserProfile 时,它​​应该再次触发 user_profile_update。

在保存期间是否有任何合理的方法来更新这些字段?

4

1 回答 1

0

由于您正在解析地址,因此在视图中处理解析是一种更好的方法,而不是作为信号。

信号通常用于对其他模型的小更新。.

因此,您的代码可以是:

profile = get_object_or_404(UserProfile, user=instance) 
profile.province = xml.duzeltilmisil #this comes from a web service

//parse the address here, and then save the models
profile.save()
于 2013-04-04T21:48:53.057 回答