Estrategia de aplicación Django


14

He estado trabajando un tiempo en un proyecto de Django que ha estado creciendo un poco últimamente. He pensado un poco sobre qué estrategia utilizar para que sea más fácil de manejar. Una cosa sobre la que me gustaría obtener información sería si dividiera mi aplicación en varias aplicaciones más pequeñas. Eso reduciría mi vista y los archivos de modelo y separaría algunas de las preocupaciones.

Una cosa que me molesta con esto es que en mis aplicaciones tendría varios métodos auxiliares que se utilizarán en todas las aplicaciones. Además, algunos modelos también deberán compartirse / utilizarse en todas las aplicaciones. ¿Tendría sentido? Esto no va bien con la separación de las preocupaciones que esperaba lograr al dividir mi aplicación en varias aplicaciones más pequeñas. ¿Cuál sería un buen enfoque para compartir métodos de ayuda, modelos, etc. entre aplicaciones?

Respuestas:


11

Si su proyecto se está volviendo grande, piense en las aplicaciones como módulos reutilizables. Puede separar la funcionalidad que se comparte entre sus aplicaciones en su propia aplicación.

Vea las discusiones a continuación para obtener más ideas al respecto:


¿Qué sucede si una aplicación necesita agregar algunos elementos de menú a la navegación del proyecto? stackoverflow.com/questions/23405610
utapyngo

2

Me gusta crear una base/aplicación sin vistas y sin momentos para cosas compartidas.

Un problema que puede ocurrir cuando tiene modelos distribuidos en varias aplicaciones es la importación circular. Esto se puede evitar utilizando cadenas para referirse a otros modelos (en foo = ForeignKey("someapp.Foo")lugar de foo = ForeignKey(someapp.models.Foo)). Django te permite usar cadenas como esta en más lugares.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.