Aunque un campo está marcado como 'editable=False'
en el modelo, me gustaría que la página de administración lo muestre. Actualmente oculta el campo por completo ... ¿Cómo se puede lograr esto?Administrador de Django: ¿Cómo mostrar un campo marcado como editable = False 'en el modelo?
Respuesta
Uso Readonly Fields. Al igual que (por Django> = 1.2):
class MyModelAdmin(admin.ModelAdmin):
readonly_fields=('first',)
actualización
Esta solución es útil si se desea mantener el campo editable en la administración, pero no se puede editar en cualquier otro lugar. Si desea mantener el campo no editable a lo largo de, entonces @Till Backhaus 'answer es la mejor opción.
respuesta original
Una forma de hacer esto sería utilizar una costumbre ModelForm
de administración. Este formulario puede anular el campo requerido para hacerlo editable. De este modo, retiene editable=False
en cualquier otro lugar que no sea Admin. Por ej. (Probado con Django 1.2.3)
# models.py
class FooModel(models.Model):
first = models.CharField(max_length = 255, editable = False)
second = models.CharField(max_length = 255)
def __unicode__(self):
return "{0} {1}".format(self.first, self.second)
# admin.py
class CustomFooForm(forms.ModelForm):
first = forms.CharField()
class Meta:
model = FooModel
fields = ('second',)
class FooAdmin(admin.ModelAdmin):
form = CustomFooForm
admin.site.register(FooModel, FooAdmin)
esto no funciona, al menos en Django 1.6 El formulario se muestra correctamente en el panel de administración, pero al guardar un formulario y volver a él de nuevo, las formas el valor está predeterminado de nuevo. – Euphorbium
- 1. ¿Cómo puedo desactivar un campo modelo en una forma Django
- 2. Para el administrador de django, ¿cómo agrego un campo al modelo de usuario y lo edito en el administrador?
- 3. Interfaz de administrador editable configuración de la aplicación Django
- 4. Cómo exponer una propiedad (campo virtual) en un modelo de Django como un campo en un TastyPie ModelResource
- 5. ¿Cómo mostrar un mensaje a un administrador de django después de guardar un modelo?
- 6. administrador de Django, ocultar un modelo
- 7. Campo de elección de administrador de Django
- 8. Adición de encargo JS a un campo Django administrador
- 9. Django - cómo establecer en blanco = False, se requiere = False
- 10. valor predeterminado para el campo en el modelo de Django
- 11. Trabajar con Django LocalFlavor postal como un modelo de campo
- 12. Administrador de Django: ¿Cómo puedo filtrar en un campo entero para un rango específico de valores?
- 13. Django invertido administrador list_display (no) un campo booleano
- 14. Django: cómo leer el nombre db_column de un campo modelo
- 15. Campo oculto en Django Modelo
- 16. Campo Django modelo predeterminado basado en otro campo en el mismo modelo
- 17. Django: agregue un campo a un modelo
- 18. Django: Mostrar imagen en la interfaz de administrador
- 19. Obtiene el campo de formulario de Django del campo modelo
- 20. ¿Cómo usar campos de formulario personalizados para campos de modelo en el administrador de Django?
- 21. ¿Cómo representar dos campos modelo como un campo de formulario en Django?
- 22. Validación de campo Django en Modelo y en Admin?
- 23. Django administrador list_display short_description
- 24. WCF DataContract - órgano de marcado isRequired = false
- 25. Carriles no texto editable campo
- 26. Ocultar campos en Django administrador
- 27. Django, ¿cómo eliminar la opción en blanco del campo de elección en forma de modelo?
- 28. ¿Cómo configuro el valor de campo predeterminado en el valor de otro campo en un modelo de Django?
- 29. Administrador de Django como Inline en mi ModelForm
- 30. Administrador personalizado Django con ManyToManyField
+1. Especialmente si _no planea_ editar el campo en absoluto en Admin. –