[pyar] [django] request en modelform

Claudio Omar Melendrez Baeza claudio.melendrez en gmail.com
Lun Sep 8 20:25:25 ART 2014


Fijate que ModelAdmin.add_view por default inicializa "su form" pasando
"request", asi:
ModelForm = self.get_form(request)

Ese form vos lo podes setear haciendo esto:
class MiModeloAdmin(admin.ModelAdmin):
    form = MiModeloForm

O sea que con hacer un override del constructor del form ya estarias hecho,
porque al recibir request podes sacar el user facilmente:
def __init__(self, request, *args, **kwargs):
    super(MiModeloForm).__init__(*args, **kwargs)
    self.user = self.request.user

Y ahi ya te queda para usarlo en el save.


2014-09-08 19:51 GMT-03:00 Daniel <dmlistapython en gmail.com>:

> Gente tengo una duda, dado el siguiente código
>
> class MiModeloAdmin(admin.ModelAdmin):
>     def add_view(self, request, form_url='', extra_context=None):
>         self.form = MiModeloForm
>
> necesito saber el user del request en un override del ModelForm
>
> class MiModeloForm(forms.ModelForm):
>     ....
>     def save(self, force_insert=False, force_update=False, commit=True):
>         m = super(MiModeloForm, self).save(commit=False)0
> -->      aca tengo que hacer algo segun el user que lo hace
>
> seguí esta receta y otras similares (1), pero cuando intento llarmar al
> form
> con parámetros me da el error que el form no es callable
>
> (1) -
> http://stackoverflow.com/questions/17768563/access-request-user-in-modelform
>
> Pregunta contrata
> ¿como puedo saber al momento del save (del modelform) el usuario del
> request?
>
>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20140908/e26bfc53/attachment.html>


More information about the pyar mailing list