Вместо переопределения виджетов в классе Meta, просто установите виджет в переопределении __init__
и укажите форму в своем классе администратора. Указанная вами форма будет использоваться только для представлений добавления / изменения. Пример:
#forms.py
from django import forms
class PedidoAdminForm(forms.ModelForm):
class Meta:
model = Pedido
def __init__(self, *args, **kwargs):
super(PedidoAdminForm, self).__init__(*args, **kwargs)
self.fields['nota'].widget = forms.Textarea()
#admin.py
from django.contrib import admin
from your_app.forms import PedidoAdminForm
from your_app.models import Pedido
class PedidoAdmin(admin.ModelAdmin):
form = PedidoAdminForm
list_editable = ['nota']
Это работает для меня в Django 1.3. Надеюсь, это поможет вам.