Martín,
Muy interesante la pregunta.
Por lo que puedo ver la mano viene por poder extender la admin app
para que use los form fields de localflavor a la hora de renderizar la change
view y la create view de tu modelo.
Revisando el código, este metodo de la clase BaseModelAdmin
(de la cual desciende ModelAdmin, ModelAdmin es la clase con
la que definís que que´res una interfaz en la app admin para tu modelo,
con sus respectivas opciones):
def formfield_for_dbfield(self, db_field, **kwargs):
"""
Hook for specifying the form Field instance for a given database Field
instance.
If kwargs are given, they're passed to the form Field's constructor.
"""
Ya el hecho de que la docstring hablde de "hook" da cierta esperanza
de que es algo 'implementable' :-D
Espero que te sirva. |Contanos como te fué!
Atentamente,
--
Ramiro Morales
No me aguanté la intriga:
Logicamente es muy posible que la condición del if en la línea 16
(linea 8 de admin.py) tengas que hacerla un poco más específica
(posiblemente basado adicionalmente en algúna otra característica del campo
CharField 'cuil' del modelo como su nombre, etc.) y no solo
con un isinstance(models.CharrField) para que no te aplique un campo de
formulario ARCUITField a *todos* los CharField de tu modelo Proveedor
(Prueba en mi ejemplo).
Este es el tipo de cosas que postearía en mi blog si tuviese uno:-)
Suerte,
--
Ramiro Morales
Me faltaba delegar en la clase padre para los casos de los
campos que no nos interesa tocar (línea 20). Sin eso, el formulario
se rompe, por ejemplo: sólo muestra el campo que estamos tocando
(cuit).
HTH
--
Ramiro Morales
PD: Definitivamente la ducha es uno de los mejores lugares para
redondear ideas, pensar en nuevas alternativas o (como
es el caso) darse cuenta de omisiones :)