En django admin, hay campos que me gustaría requerir si un modelo se edita de forma independiente. Si está en línea, no quiero que se requiera. ¿Hay alguna forma de hacer esto?En Django admin, ¿puedo solicitar campos en un modelo pero no cuando está en línea?
Respuesta
Si bien la respuesta de Daniel Roseman funciona, no es la mejor solución. Requiere un poco de duplicación de código al tener que volver a declarar el campo de formulario. Por ejemplo, si tenía un verbose_name
en ese campo, también debería agregar label='My verbose_name already set on model'
a la línea CharField
, ya que volver a declarar el campo completo básicamente borra todo lo establecido en su modelo para ese campo.
El mejor enfoque es para anular el método de la forma __init__
y establezca explícitamente field.required
-True
o False
allí.
class MyModelForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(MyModelForm, self).__init__(*args, **kwargs)
self.fields['myfield'].required = True
Sure. Simplemente defina un formulario personalizado, con su campo obligatorio anulado para establecer required = True, y úselo en su clase de administrador.
class MyForm(forms.ModelForm):
required_field = forms.CharField(required=True)
class Meta:
model = MyModel
class MyAdmin(admin.ModelAdmin):
form = MyForm
class MyInlineAdmin(admin.ModelAdmin):
model = MyModel
Así que aquí MyAdmin está utilizando la forma anulado, pero no es MyInlineAdmin.
- 1. ¿Cómo puedo solicitar campos en Django ModelForm?
- 2. modelo no aparece en django admin
- 3. Reordenando campos en Django modelo
- 4. Django Admin -> Cambiar el orden de los campos, incluidos los campos en línea
- 5. Condicional en línea en Django admin?
- 6. No puedo iniciar sesión en Django admin
- 7. ¿Cómo solicito una línea en Django Admin?
- 8. Campos de solo lectura en django admin/inline
- 9. Modelo múltipleAdmins/views para el mismo modelo en Django admin
- 10. Anular un formulario en Django admin
- 11. Autor automático en Django admin
- 12. Cómo personalizar un modelo en línea de muchos a muchos en django admin
- 13. inlines inversa en Django admin con más de un modelo
- 14. Django-admin por múltiples campos
- 15. personalizar seleccionar en django admin
- 16. ¿Cómo establecer otro título en línea en Django Admin?
- 17. Django admin, sección sin "modelo"?
- 18. ¿Cómo puedo introspectar propiedades y campos modelo en Django?
- 19. WMD en Django Admin?
- 20. ¿Cómo agregar campos multitracionales manytomany en django admin?
- 21. Cómo limitar los campos en django-admin según el usuario?
- 22. Validación de campo Django en Modelo y en Admin?
- 23. Agregando muchos objetos en línea a muchos en Django admin
- 24. Acciones personalizadas en Django Admin
- 25. campos del modelo dinámico Django
- 26. Django Admin: ¿cómo mostrar las propiedades definidas en el modelo en línea?
- 27. Configuración del sitio en django-admin
- 28. Validar eliminación en formularios en línea de django-admin
- 29. Mostrar modelo URL en admin
- 30. Formularios dinámicos en django-admin
Muchas gracias – Mitch