我有两个具有以下字段的模型:
Profile:
-user(OTO Relation to User)
-address(OTO to Address)
-bio
-gender
...
Address:
-postal_code
-phone_number
-zip_code
我也有以下字段名称列表:
my_list = ["bio","gender","address.postal_code","address.phone_number","address.zip_code"]
最后我要创建这个@property
:
@property
def is_complete_profile(self):
''' Checks if all the fields have been filled '''
if self.pk:
for field_name in my_list:
value = getattr(self,field_name)
if not value:
return False
return True
else:
return False
但是对于related objects
,这不是正确的方法,并且出现了此错误:
“个人资料”对象没有属性“ address.postal_code”
如何使用此列表获取Profile
对象的字段值和相关对象值?
通知:
我可以使用
eval
函数解决此问题,但是由于 在user's home directory和this帖子中,我宁愿放弃此解决方案。