Django的
感謝由茁壯成長在具有多個應用程序。 1用戶註冊的應用程序,1個應用程序的配置文件,1個應用程序的評論,1個應用程序的博客帖子等等。
正如你所指出的,做一切應用程序將迅速導致混亂。 Django的最佳方法是創建許多非常特定的應用程序。這也可以讓你有更多的應用程序,你可以在其他項目中重用,如果你願意的話。
Django項目有幾十種可能的「結構」。我會選擇最模塊化的方法。對於每一項功能,只要問問自己:這是否屬於另一個應用程序?如果答案是否定的,最好爲它創建一個單獨的應用程序。
例如,可以在多個網站上使用相同的博客帖子應用程序,您只需更改模板以使其適合頁面的新佈局/設計。所有的邏輯應該大致相同。博客文章的邏輯不應與查看個人資料或其他內容的邏輯相關聯。
示例:註釋應用的模型看起來是這樣的:
from django.db import models
from profile.models import Profile
from blog.models import Blog
class Comment(models.Model):
user = models.ForeignKey(Profile, related_name='comments')
blog = models.ForeignKey(Blog, related_name='comments')
message = models.CharField(max_length=200)
謝謝,非常好的指導,我想知道,因爲所有的車型都在聯繫,不要我如果我將它們分成多個應用程序,就會破壞關係? – doniyor
那麼您可以像導入同一個應用程序一樣輕鬆地從其他應用程序導入模型,我將使用快速示例更新答案 – EWit
您可以創建'不同應用程序模型之間的ForeignKey'不要小心不要產生週期(例如應用程序A取決於B,這取決於A,...);如果你不小心,它們不僅會創建一個導入循環,它們也常常是過度複雜的模式的標誌...... – sk1p