擅长:python、mysql、java
<p>谢谢你的指点;这是我最后使用的。但仍然没有弄清楚当初失败的原因:-/</p>
<pre><code>def get_profile(self):
for field in self._meta.get_fields():
if field.one_to_one and 'SchoolPerson' in [base.__name__ for base in field.related_model.__bases__]:
try:
return getattr(self, field.get_accessor_name())
except ObjectDoesNotExist:
pass
raise ObjectDoesNotExist
</code></pre>