Resulta que, debido a que es un proyecto relativamente grande, la "API" sobre los modelos iba creciendo y creciendo haciendo engorroso el trabajo, por lo que decidí pasar a utilizar wrappers. Básicamente, si antes tenía una estructura así:
Código Python:
Ahora estoy así:Ver original
# models.py class MyModel(models.Model): prop1 = ... prop2 = ... def f1(self): pass def f2(self): pass
Código Python:
Lo cual me permite separar definición de funcionalidad. Sin embargo, a la hora de la verdad, myapp.wrappers.MyModel se convierte mágicamente en myapp.models.MyModel, y por tanto al intentar ejecutar f1 me da un AttributeError, pues el modelo no tiene ese método.Ver original
# models.py class MyModel(models.Model): prop1 = ... prop2 = ... # wrappers.py from myapp import models class MyModel(models.MyModel): def f1(self): pass def f2(self): pass
Mi pregunta es: ¿qué coj*#$@ está pasando ahí? ¿Se debe a que el modelo y el wrapper se llaman igual? ¿Hay algún fallo en mi razonamiento?
Saludos y gracias por la ayuda :)