23

Python では、次のように定義できます。

class Person(object):
   name = "Easwar"
   age = 35
   sex = "male"

   class Occupation:
      name = "my_job"

その後、アクセスできます

>> p = Person()
>> p.Occupation.name
>> # prints "my_job"

ただし、Django では、内部に Class Meta で定義されたモデルがある場合、これを行うことはできません

>>> m = SomeDjangoModel()
>>> m.Meta
>>> # prints AttributeError!

どうしてこれなの ?Django の内部メタ クラスは通常の Python クラスとどう違うのですか?

私はこれを調査しましたが、ここで同様の質問をすることはできませんでした。見落としがありましたらご容赦ください。

助けてくれてありがとう。

4

2 に答える 2

39

メタ属性は、メタクラスによって変更されます。

試す:

SomeDjangoModel._meta
于 2013-09-19T14:45:05.527 に答える