Campo solo lectura en formulario con django



   AUTOR PREGUNTA

Publicado 01 mayo 2014 - 20:53

¿Cómo puedo implementar en Django con la utilidad form un campo que sea solo lectura de forma tal que no se pueda editar?


1 personas más tuvieron esta duda Yo también

 

Publicado 02 mayo 2014 - 03:05

Puedes ayudarte de la utilidad de los widgets para realizar lo que necesitas:

class ItemForm(ModelForm):
def __init__(self, *args, **kwargs):
super(ItemForm, self).__init__(*args, **kwargs)
instance = getattr(self, 'instance', None)
if instance and instance.pk:
self.fields['sku'].widget.attrs['readonly'] = True
def clean_sku(self):
instance = getattr(self, 'instance', None)
if instance and instance.pk:
return instance.sku
else:
return self.cleaned_data['sku']

   AUTOR PREGUNTA

Publicado 02 mayo 2014 - 04:18

Gracias Nieves, campos solo lectura implementados