Chiến lược ứng dụng Django


14

Tôi đã làm việc một thời gian trong một dự án Django đang phát triển một chút gần đây. Tôi đã suy nghĩ một chút về việc sử dụng chiến lược nào để dễ xử lý hơn. Một điều tôi muốn nhận được một số đầu vào là nếu tôi nên chia ứng dụng của mình thành nhiều ứng dụng nhỏ hơn. Điều đó sẽ làm cho các tập tin mô hình và mô hình của tôi nhỏ hơn và tách biệt một số mối quan tâm.

Một điều làm phiền tôi với điều này là trong các ứng dụng của mình, tôi sẽ có một số phương thức trợ giúp sẽ được sử dụng trên các ứng dụng. Ngoài ra một số mô hình cũng sẽ phải được chia sẻ / sử dụng trên các ứng dụng. Điều này sẽ có ý nghĩa? Điều này không phù hợp với sự phân tách các mối quan tâm mà tôi hy vọng đạt được bằng cách chia ứng dụng của mình trong một số ứng dụng nhỏ hơn. Điều gì sẽ là một cách tiếp cận tốt để chia sẻ phương pháp trợ giúp, mô hình, vv trên các ứng dụng?

Câu trả lời:


11

Nếu dự án của bạn đang trở nên lớn, hãy nghĩ về các ứng dụng như các mô-đun có thể tái sử dụng. Bạn có thể tách chức năng được chia sẻ trên các ứng dụng của mình thành ứng dụng riêng.

Xem các cuộc thảo luận dưới đây để biết thêm suy nghĩ về vấn đề này:


Điều gì xảy ra nếu một ứng dụng cần thêm một số mục menu vào điều hướng dự án? stackoverflow.com/questions/23405610
utaccngo

2

Tôi thích tạo một base/ứng dụng không có lượt xem và không có khoảnh khắc cho những thứ được chia sẻ.

Một vấn đề có thể xảy ra khi bạn có các mô hình trải rộng trên nhiều ứng dụng là nhập vòng tròn. Điều này có thể tránh được bằng cách sử dụng các chuỗi để tham chiếu đến các mô hình khác ( foo = ForeignKey("someapp.Foo")thay vì foo = ForeignKey(someapp.models.Foo)). Django cho phép bạn sử dụng các chuỗi như thế này ở nhiều nơi hơn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.