En utilisant django/appengine, comment puis-je présenter un formulaire qui permet l'entrée de certains champs de modèle, puis définir des champs de modèle supplémentaires dans le code. L'appel de form.save (commit = False) déclenche une exception car l'utilisateur n'est pas défini. Quelle est la bonne façon pour Django de gérer des cas comme celui-ci?Django: Création d'un formulaire qui ne définit pas tous les champs de modèle requis?
J'ai les classes de modèle et formulaire:
class FooModel(db.Model):
user = db.UserProperty(required=True)
date = db.DateProperty(required=True)
class FooForm(djangoforms.ModelForm):
class Meta:
model = models.FooModel
exclude = ['user']
et le code de gestionnaire de requête suivante:
if request.method == 'POST':
form = forms.FooForm(request.POST)
# form.save() raises an exception because 'user' is not set
foo = form.save(commit=False)
foo.user = users.get_current_user()
foo.save()
mais l'utilisateur est en fait requis. – anthony