我對相當一維的Django實現很滿意,但現在試圖理解多站點與共享東西的過程。Django站點框架初始設置
我已經閱讀了Django Sites Framework以及該主題上的許多帖子,但是我沒有得到如何啓動使用相同數據庫的第二個站點的基礎知識,但是將其本身顯示爲單獨的域名。
我有一個非常高興和由書籍django網站組成的一個應用程序運行在一個項目中。
要使用教程的說法,我開始一個項目「mysite的」與
django-admin.py startproject mysite
,然後用
manage.py startapp polls
Q1啓動一個應用程序「民意調查」:是否站點框架假設每個網站都是單獨的項目或單獨的應用程序?
該項目中的第二個應用程序'polls2'似乎是有道理的,但其中定義SITE_ID的settings.py似乎是一個整體項目。有沒有一種方法可以製作按應用程序設置?
與'mysite'相鄰的第二個proj'mysite2'會給我第二個結構,它有自己的settings.py和一個單獨的SITE_ID,但是這樣做似乎違反了「DRY」原則,因爲我會複製相鄰姐妹項目的許多元素。
Q2:聽起來我需要將數據庫模型(models.py)重新定義爲多對多關係,以便在站點之間共享數據。這是否改變了Django訪問這些表的方式,還是現有網站的數據庫也需要重建?
對於實現網站框架的預期流程,您的指導意見非常重大。
感謝您的詳細響應。稍微澄清 - 當你說「你會選擇你想要運行的站點......」這種方法是否允許兩個站點同時運行?對我來說這不是一個單獨或另一個目標,都需要工作。仍然吸收所有這些。 Prob只需要跳進去嘗試一下(並且希望我不會搞砸太多:) – RossGK
當然 - 在開發過程中,您只需同時運行Django開發服務器的兩個實例,每個站點一個。在生產中,您將兩個單獨的規則添加到您的Web服務器配置中,每個座標一個。 –