2012-08-31 167 views
1

我的問題是相當困難的話來包裝,但讓我們試試:Django項目名稱

我覺得它更容易用圖表來解釋我的問題表明我的Django項目結構:

PROJECT1 ---- ----/PROJECT1

     settings.py 
         urls.py 
         models.py 
         views.py 
      manage.py 

      /App1 
         urls.py 
         models.py 
         views.py 

現在,在我的應用1 views.py,我怎麼可能做到 「project1.models導入*」 沒有硬編碼 「PROJECT1」?相反,我需要有一個主項目的動態名稱(在這種情況下爲project1)。

我的目標是我可以在我的下一個項目中使用這個相同的結構,並儘可能少地改變代碼。在這種情況下,目前我需要將App1視圖中的那一行更改爲我的項目的名稱。

謝謝!

+0

爲什麼你有模型和視圖在項目目錄? –

+0

沒有理由的意見(只是複製/粘貼來自另一個文件夾的示例),但模型爲我想擁有在一個地方相關的所有網站。就像這個特定網站的不同頁面或這些網頁的內容一樣。網站的其他部分(菜單,圖庫等)都是單獨的應用程序,它們只能從主要模型中獲取實際內容。他們與任何項目合作,因爲內容是可用的。所以理論上這隻能通過將Project1更改爲另一個站點來實現。如果需要,可以啓用或禁用應用程序 - 但該網站及其內容位於該主文件夾中。 – user1000736

回答

3

您可以使用relative imports

from ..models import * 
+0

哇,那很容易?我現在有點擔心;如果事情聽起來很容易成真,那很可能是。特別是在編程中......只要我回到我的代碼,我就會放棄它,歡呼! – user1000736