2010-01-05 7 views
17

Ich habe festgestellt, dass in Django-Modellen gibt es eine class Meta, die einige zusätzliche Definitionen über das Modell macht.Warum ist Djangos Meta eine Klasse im alten Stil?

Meine Frage ist, warum wird dies als eine Art alten Stil getan? (d. h. keine Unterklassen object?) Gibt es einen Grund dafür oder ist das nur ein Brauch? Könnte ich das in meinen Projekten als eine neue Art von Unterricht machen?

Antwort

15

Ich glaube, dass es keinen wirklichen Grund gibt (einschließlich Geschichte, da seit Python 2.2 neue Klassen existieren) und dass Sie nicht nur eine neue Stilklasse wählen können, sondern dass es wahrscheinlich eine gute ist Idee für Sie (aus allen üblichen Gründen).

8

Da die Klasse Meta nie etwas anderes als ein einfacher Namespacebehälter ist, gibt es keinen Vorteil für das Unterklassenobjekt. nur acht zusätzliche Zeichen zum Tippen. Wird dir aber nichts weh tun, wenn dir danach ist.

Verwandte Themen