2010-02-12 55 views
1

問候, 我目前正在使用的Django 1.1.1一項長期的工程,我們計劃將它釋放圍繞2010年Django的版本選擇

現在行軍,而衝浪我來到這個article其中說,Django 1.2.0的計劃發佈日期是2010年3月9日。

現在我有點困惑。如果我應該繼續在1.1.1下開發或者開始使用1.2.0 beta開發。

+2

根據我的經驗,django的發佈日期很可能會遲到。所以選擇最新的穩定版本。 – 2010-02-12 12:38:21

+1

他的發展計劃可能有點樂觀。 1.2版本中不會有任何變化影響項目的同步開發。那麼爲什麼強迫自己進入一個較老的分支,當你可能需要利用1.2的功能呢?我需要所有這些爲我的項目...更好的CSRF,電子郵件後端,多分貝,消息框架,智能「如果」,模型驗證,Model.objects.raw()等... – jonwd7 2010-02-12 12:59:01

+0

@ jonwd7:你需要更好的跨站請求僞造? – jcdyer 2010-02-12 19:52:35

回答

4

我會說,只有開發的最新版本,如果有一個特定的功能,你需要/喜歡。閱讀它,讓你知道當然是什麼在商店。

1.0以上。我發現交換django版本是相對麻煩的。在任何階段,您只需在測試服務器上的源樹上交換符號鏈接。當然,運行你編寫的完整的單元測試套件將會顯示任何版本錯誤的bug。

1

升級路徑並不難。我會熟悉這些差異並避免棄用,但繼續在戰鬥測試1.1分支。雖然您永遠不應該信任軟件發佈日期,但您也可能不希望將自己的農場打入一個全新的分支,並且您的顯然不需要的功能。你在一個月內有很多事情要發佈。有時間升級。如果您的發佈計劃在六月份,您可能會考慮它,但現在堅持穩定。這是mho。

1

我們目前正在開發的應用程序的一部分現在正在投入生產,但我們希望使用Django 1.2 final。我們的策略是使用Django 1.1.1編寫代碼,測試和部署,但也使用virtualenv進行測試。無論您的部署決策如何,您都無需在1.2下測試您的代碼,因爲您最終希望它與1.2兼容。

virtualenv使整個過程變得無痛苦,是快速切換環境的關鍵。設置起來非常簡單:

easy_install virtualenv 
virtualenv django12 
cd django12 
source bin/activate 

然後在虛擬環境中下載並安裝Django 1.2並運行測試。我使用virtualenv在端口8081上運行開發服務器,這樣我就可以同時運行兩個服務器 - 使用相同的應用程序代碼 - 端口8080,8081.

在我們的案例中,我們必須刪除一個導入並用試用/除外條件包裝其他幾個人。我不得不爲CSRF編寫一個虛擬的csrf_token模板標籤,Django開發人員告訴我他們將在1.2版本中包含一個虛擬標籤。由於當前版本不支持Django 1.2,我們還將南遷移工具升級到0.7-pre。底線:無論您的部署決定如何,如果可能的話,可以測試兩個版本的Django。