Necesito "anular" algunos de los miembros de clase anidados de la clase base, mientras mantengo el resto intacto.
Esto es lo que hago:¿Cuál es una mejor manera de anular los miembros de clase anidados en Python?
class InternGenericForm(ModelForm):
class Meta:
model = Intern
exclude = ('last_achievement', 'program',)
widgets = {
'name': TextInput(attrs={'placeholder': 'Имя и фамилия' }),
}
class InternApplicationForm(InternGenericForm):
class Meta:
# Boilerplate code that violates DRY
model = InternGenericForm.Meta.model
exclude = ('is_active',) + InternGenericForm.Meta.exclude
widgets = InternGenericForm.Meta.widgets
De hecho, quiero InternApplicationForm.Meta
ser exactamente igual que InternGenericForm.Meta
, excepto que su exclude
tupla debe contener un artículo más.
¿Cuál es una forma más hermosa de hacer esto en Python?
Ojalá no tuviera que escribir un código repetitivo como model = InternGenericForm.Meta.model
que también es propenso a errores.