I en utilisant Django et une vue générique « django.views.generic.create_update.create_object » J'ai une forme de modèle Wich je passe à la vue générique:demande Pass pour le formulaire type à l'aide vue générique dans Django
url(r'^add$', create_object, {'template_name':'tpl.html','form_class':MyModelForm,'post_save_redirect':'/'},name = 'add'),
Je dois obtenir l'utilisateur actuel dans ma méthode ModelForm.save .. Mais je ne peux pas trouver le moyen de l'obtenir, s'il vous plaît aidez-moi à trouver un moyen pratique?
class MyModelForm(forms.ModelForm):
class Meta:
model = MyModel
def save(self,*a,**b):
MyModel.save(user=request.user) #how can i get here request.user?
En voie commune, la question est - comment puis-je accsess params demande dans les formes transmises à vue générique.
hmm, je suis curieux de savoir ce que bien. cela vous dérange-t-il d'écrire votre propre gestionnaire générique, ou devez-vous utiliser le gestionnaire standard et le faire fonctionner ici? l'ancien j'ai fait, mais pas encore le dernier ... – eruciform
de préférence je veux utiliser des vues génériques. Je vois une solution pour utiliser middleware par exemple pour attacher request.user directement à MyModelForm, mais j'ai aussi des problèmes là (MyModelForm instanse est passé de l'import à l'import .. Je ne sais pas pourquoi mais j'ai différentes instances d'objets de classe dans save method et ma fonction middleware, et je perds mon paramètre attaché en save). D'une autre manière je pense que cela peut être fait dans apply_extra_context il peut être utilisé quelque chose comme ce contexte [clé] = valeur (demande), mais il utilise seulement le contexte [clé] = valeur() ... – Evg