Y at-il un moyen de référencer un nom de classe à partir de la déclaration de classe? Voici un exemple:Définition de classe auto-référencée en python
class Plan(SiloBase):
cost = DataField(int)
start = DataField(System.DateTime)
name = DataField(str)
items = DataCollection(int)
subPlan = ReferenceField(Plan)
j'ai un métaclasse qui lit cette information et fait une certaine configuration, et la classe de base met en œuvre des trucs d'économie commune. J'aimerais pouvoir créer des définitions récursives comme celle-ci, mais jusqu'ici dans mon expérimentation j'ai été incapable d'obtenir l'effet que je désire, en courant habituellement dans une erreur "Plan n'est pas défini". Je comprends ce qui se passe, le nom de la classe n'est pas dans la portée de la classe.
Super que vous avez mentionné Google App Engine ainsi! +1 –
Dans Google App Engine - DB l'a, mais pas le NDB. Pour voir comment faire ceci dans le NDB regardez ici: http://stackoverflow.com/questions/3531936/selfreferenceproperty-question – Brad