Saya telah bekerja beberapa saat pada proyek Django yang telah tumbuh sedikit belakangan ini. Saya telah memikirkan sedikit tentang strategi apa yang digunakan untuk membuatnya lebih mudah ditangani. Satu hal yang saya ingin mendapat masukan adalah jika saya harus membagi aplikasi saya menjadi beberapa aplikasi yang lebih kecil. Itu akan membuat tampilan dan model file saya lebih kecil dan memisahkan beberapa masalah.
Satu hal yang mengganggu saya adalah bahwa dalam aplikasi saya, saya akan memiliki beberapa metode pembantu yang akan digunakan di seluruh aplikasi. Juga beberapa model juga harus dibagikan / digunakan di seluruh aplikasi. Apakah ini masuk akal? Ini tidak sesuai dengan pemisahan kekhawatiran yang saya harapkan untuk dicapai dengan memisahkan aplikasi saya di beberapa aplikasi yang lebih kecil. Apa yang akan menjadi pendekatan yang baik untuk berbagi metode, model, dll. Di berbagai aplikasi?
sumber
Saya suka membuat
base/
aplikasi tanpa tampilan dan tanpa momen untuk hal-hal yang dibagikan.Satu masalah yang dapat terjadi ketika model Anda tersebar di beberapa aplikasi adalah impor melingkar. Ini dapat dihindari dengan menggunakan string untuk merujuk ke model lain (
foo = ForeignKey("someapp.Foo")
bukanfoo = ForeignKey(someapp.models.Foo)
). Django memungkinkan Anda menggunakan string seperti ini di lebih banyak tempat.sumber