2012-11-29 76 views
2

我在postgresql中有一個數據庫,我必須將它連接到Web服務器。我熟悉python編程,但不熟悉web編程。我有一些關於DAL(數據庫抽象層)的信息來從python中編寫我的查詢。我必須將我的查詢概括爲函數。使用DAL並使用web2py技術將其連接到Web服務器是否是一個好主意?使用DAL和web2py將PostgreSQL數據庫連接到Web服務器的選擇

回答

1

如果數據庫不可知是您的需求,那麼web2py DAL是一個很好的選擇。這意味着DAL會使用數據庫後端的指定方言實時動態生成SQL,因此您不必編寫SQL代碼或學習不同的SQL方言;因此,您的應用程序可以在不同類型的數據庫之間移植。由於SQL是由DAL動態生成的,因此它確保所有插入的數據都能正確轉義,從而防止注入漏洞並使SQL注入變得不可能。

此外,雖然我沒有在web2py書中發現任何關於如何從現有數據庫自動生成模型的內容,但有一種方法可以通過使用可用腳本從現有PostgreSQL數據庫快速,輕鬆地創建數據庫模型在由Mariano Reingart創建的github上,他基於一個由Alexandre Andrade創建的「從dbs生成模式」(mysql)的腳本。該腳本用於從PostgreSQL數據庫創建一個web2py數據庫模型。

由於我使用的是MSSQL數據庫,我需要一個類似的腳本,但是我找不到任何東西,所以我對腳本進行了小的編輯,特別是圍繞SQL和數據類型,以便它更符合MSSQL ,它像一個魅力。我有一個數秒鐘的數據庫模型,它爲我節省了大量的時間。

https://github.com/phektus/cvstash/blob/master/scripts/extract_pgsql_models.py 

我希望這可以幫助那些正在尋找相同的人。

2

web2py DAL支持Postgres,您可以在web2py中使用它,也可以只使用dal.py並使用您喜歡的項目/框架。

對於現有的數據庫,我建議你閱讀的http://web2py.com/book

的第6章我有Postgres的運行多個應用程序,它工作得很好!

相關問題