Почему Мета Джанго - класс в старом стиле? - PullRequest
18 голосов
/ 05 января 2010

Я заметил, что в моделях Django есть class Meta, который дает некоторые дополнительные определения модели.

Мой вопрос: почему это делается как класс в старом стиле? (то есть не подклассы object?) Есть причина для этого или это просто обычай? Могу ли я сделать это как класс нового стиля в моих проектах?

Ответы [ 2 ]

15 голосов
/ 05 января 2010

Я полагаю, что нет реальной причины (включая историю, поскольку классы нового стиля существуют с Python 2.2), и что вы можете не только использовать вместо этого класс нового стиля, но это, вероятно, будет хорошей идеей для вас (по всем обычным причинам).

8 голосов
/ 05 января 2010

Поскольку класс Meta никогда не является чем-то иным, как простым контейнером пространства имен, у объекта подкласса нет никаких преимуществ; всего восемь дополнительных символов для ввода. Ничего не мешало бы сделать это, если вам так хочется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...