J'ai besoin d'hériter d'un formulaire basé sur un autre comme décrit dans Django documentation. J'ai créé le code suivant:Django Formulaire d'héritage sur Google App Engine
'''models'''
class Blog(db.Model):
slug = db.StringProperty('blog url', required=True)
name = db.StringProperty('blog name', required=True)
author = db.UserProperty(auto_current_user_add=True, required=True)
'''forms'''
class BlogCreateForm(forms.ModelForm):
class Meta:
model = Blog
exclude = ('author',)
def clean_slug(self):
return "something"
class BlogEditForm(BlogCreateForm):
class Meta(BlogCreateForm.Meta):
model = Blog
exclude = ('author', 'slug')
J'imprime ces formes et vois des résultats semblables - montrés deux champs - nom et limace. Mais attendu un champ "nom" en résultat du rendu BlogEditForm.
NOTE que je lance ce code sur Google App Engine avec Django 1.2.1.
Maintenant, j'ai utilisé forme sans héritage et ce travail bien:
class BlogEditForm(forms.ModelForm):
class Meta:
model = Blog
exclude = ('author', 'slug')
Je pense que la situation actuelle basée sur Google App Engine mise en œuvre des formes patcher.
En savoir plus sur djangoforms patcher dans Google App Engine - http://code.google.com/p/googleappengine/source/browse/trunk/python/google/appengine/ext/db/djangoforms.py. –
Qui a des idées sur la façon de résoudre ce problème? –