Mỗi "ứng dụng" phải nhỏ - một thực thể tái sử dụng duy nhất cộng với một vài bảng được liên kết. Chúng tôi có khoảng 5 cộng/trừ 2 bảng cho mỗi mô hình ứng dụng. Hầu hết các ứng dụng nửa tá của chúng tôi nhỏ hơn 5 bảng. Một không có bảng trong mô hình.
Mỗi ứng dụng phải được thiết kế để trở thành một khái niệm có thể tái sử dụng. Trong trường hợp của chúng tôi, mỗi ứng dụng là một phần của trang web tổng thể; các ứng dụng có thể được gỡ bỏ và thay thế riêng biệt.
Thật vậy, đó là chiến lược của chúng tôi. Khi các yêu cầu của chúng tôi mở rộng và hoàn thiện, chúng tôi có thể xóa và thay thế các ứng dụng độc lập với nhau.
Không sao để ứng dụng phụ thuộc lẫn nhau. Tuy nhiên, sự phụ thuộc phải được giới hạn trong những điều hiển nhiên như "mô hình" và "hình thức". Ngoài ra, các ứng dụng có thể phụ thuộc vào tên trong URL của nhau. Do đó, URL được đặt tên của bạn phải có dạng như "xem ứng dụng", vì vậy, chức năng reverse
hoặc thẻ {% url %}
có thể tìm thấy chúng đúng cách.
Mỗi ứng dụng nên chứa nó lệnh batch riêng (thường là thông qua một lệnh chính thức có thể được tìm thấy bởi các django-admin
kịch bản.
Cuối cùng, bất cứ điều gì đó là phức tạp hơn một mô hình đơn giản hoặc hình thức mà được chia sẻ có lẽ không thuộc về Ví dụ, chúng tôi sử dụng XLRD, nhưng bọc các phần của nó trong lớp riêng của chúng tôi để nó giống như mô-đun được xây dựng trong csv
. Gói này cho XLRD không phải là một phần thích hợp của bất kỳ ứng dụng nào, với một mô-đun riêng biệt, bên ngoài ứng dụng Django.
Nguồn
2009-02-09 22:30:57
Đồng ý ... Những điều tôi học được từ làm việc trên pinax và satchmo là vô giá – Jiaaro