Các nguyên tắc chính tương tự như bất kỳ dự án mã lớn nào khác. Ứng dụng phải giải quyết một trách nhiệm được xác định rõ ràng. Tên "ứng dụng" là từ sai; Ứng dụng Django nên được nghĩ đến nhiều hơn như các thành phần có thể tái sử dụng có thể được cắm lại với nhau để tạo ra một ứng dụng thực sự. Các thử nghiệm cho mỗi ứng dụng phải được chứa trong ứng dụng đó. Các ứng dụng nên được tách rời khỏi nhau càng nhiều càng tốt, nhưng rõ ràng sẽ có sự phụ thuộc, vì vậy mục tiêu phải là giữ cho biểu đồ phụ thuộc đơn giản và lành mạnh nhất có thể.
Tôi muốn giữ tất cả các mẫu cho dự án trong một thư mục mẫu toàn dự án, với thư mục con cho mỗi ứng dụng (sử dụng thư mục con mẫu cho mỗi ứng dụng là một quy ước rất mạnh ở Django, vì nó tránh tên mẫu xung đột giữa các ứng dụng). Lý do cho một thư mục mẫu toàn dự án là mẫu, cây thừa kế mẫu và tên khối có thể khá cụ thể cho dự án, do đó rất khó cung cấp mẫu ứng dụng "mặc định" có thể cắm vào bất kỳ dự án nào.Đã có một số nỗ lực để giải quyết các quy ước đặt tên chuẩn cho các mẫu nền tảng cơ sở và các khối mà chúng xác định, nhưng tôi chưa thấy một tiêu chuẩn nổi bật nào (cách chúng thực hiện tại Pinax có lẽ là gần nhất chúng ta phải Tiêu chuẩn).
Re "string externalization", nếu bạn muốn nói i18n và l10n, Django có hỗ trợ mạnh mẽ cho các địa điểm đó và tiêu chuẩn nơi đặt tệp .po - kiểm tra docs.
Nguồn
2008-09-25 19:30:33
Trong câu trả lời này, bạn cần phải thoát khỏi dấu gạch dưới ban đầu trong \ _ \ _ init__.py để tránh nó được diễn giải là văn bản in đậm bởi công cụ đánh dấu. – akaihola