tutorial template superusuario startapp setup personalizar manage crear python django django-admin

python - template - ¿Cómo agrego un widget de administración en línea personalizado en Django?



personalizar admin django (3)

Funciona exactamente de la misma manera. Las clases TabularInline y StackedInline también tienen un método formfield_for_dbfield, y lo reemplaza de la misma manera en su subclase.

Esto es fácil para no en línea. Simplemente anule lo siguiente en sus admin.py AdminOptions:

def formfield_for_dbfield(self, db_field, **kwargs): if db_field.name == ''photo'': kwargs[''widget''] = AdminImageWidget() return db_field.formfield(**kwargs) return super(NewsOptions,self).formfield_for_dbfield(db_field,**kwargs)

No puedo resolver cómo adaptar esto para trabajar en línea.


Desde Django 1.1, formfield_overrides también está funcionando

formfield_overrides = { models.ImageField: {''widget'': AdminImageWidget}, }


Editar: No importa. Esto fue solo un estúpido error de mi parte.

¿Podría proporcionar un pequeño fragmento de este trabajo en línea? Cuando pruebo el código a continuación, estoy obteniendo un keyerror extraño.

class PictureInline(admin.StackedInline): model = Picture_Gallery extra = 3 def formfield_for_dbfield(self, db_field, **kwargs): if db_field.name == ''name'': kwargs[''widget''] = MyWidget() return super(PictureInline,self).formfield_for_dbfield(db_field,**kwargs)