2012-02-05 42 views
1

我想就如何組織數據庫驅動的Web應用程序的文件提供一些建議。爲數據庫功能組織Python webapp的項目文件

該項目的主要組成部分是:

  • SQLite數據庫
  • 與金字塔框架編寫的Web應用程序,它從數據庫
  • 一套Python應用程序讀取其數據下載和它添加到數據庫
  • 文檔

我想跟蹤所有源FIL es使用git的所有組件(包括文檔)。

以下看起來像是一個良好的項目結構?

Main_Project_Directory 
+-- virtualenv 
| +-- bin, lib, include, man 
| +-- PyramidApplication 
| | +-- setup.py 
| | +-- development.ini 
| | +-- Application 
| | | +-- __init__.py 
| | | +-- ... 
| | +-- ... 
| +-- DatabaseWritingApp1 
| | +-- __init__.py 
| | +-- ... 
| +-- DatabaseWritingApp2 
| | +-- __init__.py 
| | +-- ... 
| +-- database.sqlite 
+-- documentation 

我應該如何初始化git存儲庫? 在頂層目錄中有一個git存儲庫可以跟蹤金字塔應用程序,其他應用程序和文檔嗎? 或者將多個git存儲庫更好?我是這個項目的唯一開發者。

此外,virtualenv中是否有一些文件列出了所有已安裝的軟件包及其版本,以便bin,lib等目錄可以從中重建? 如果是這樣,將該文件包含在git存儲庫中是否好,以便在pull之後可以輕鬆地重建virtualenv?

感謝您的任何幫助。

回答

0

你不需要virtualenv目錄中的所有項目。我喜歡將所有文件都放在~/Workspace以保持清潔。在運行金字塔應用程序之前,請確保您運行的是. virtualenv_directory/bin/activate

我不知道你是否試圖用你的代碼模塊化。換句話說,你計劃在PyramidApplication之外使用DatabaseWritingApp*嗎?如果是這樣,我會做你正在做的事情,並將它們分成不同的文件夾,併爲每個文件夾都有一個GitHub存儲庫,而不管你有多少開發人員。另一方面,如果您不打算分開使用DatabaseWritingApp*,我只需要將所有內容都包含在PyramidApplication中,並使用一個GitHub存儲庫。

對於virtualenv的bin和lib,我所做的是確保我需要的所有庫都在setup.py文件中,並且在運行Pyramid應用程序之前運行python setup.py develop。這將確保你的virtualenv擁有所有必要的庫,假設它們都來自easy_install或pip。

+0

感謝您的建議 – mskel 2012-02-07 13:34:20