▽1
●
TransFreeBSD ●100ポイント ベストアンサー |
質問自体は__setattr__あたりを使って、obj_aにobj_bを持たせた時点で、obj_bにobj_aを持たせるとかになると思います。
http://docs.python.jp/2/reference/datamodel.html#object.__setattr__
ただ、コメントの補足の話だとちょっと違って、回答にあるように、そもそもとして多対一や多対多なのに一対一のようなアクセスをしようとするから発生する問題であって、一対一ならば一対一のしくみ
http://docs.djangoproject.jp/en/latest/topics/db/queries.html#id29
https://docs.djangoproject.com/en/dev/topics/db/examples/one_to_one/
を使えば解決する問題だと思います。
#djangoもこういうので__setattr__とか色々使ってた気がします。
# # 質問自体は__setattr__あたりを使って # obj_aにobj_bを持たせた時点で # obj_bにobj_aを持たせるとかになると思います。 # class A(): def get_obj_b(self): self.obj_b.obj_a = self.obj_a return self.obj_b class B(): def get_obj_c(self): self.obj_c.obj_b = self.obj_b return self.obj_c class C(): def one_method(self): print(self.obj_b) print(self.obj_b.obj_a)