問題修復
- 修正 Pickle 預設值Bug,將不會自動將空值轉為 ''
- 修正當存在 group_by, limit, join 時的 count 的實現,將使用 select count(*) from (select * from table)
- 修正 uliweb load 在處理cvs格式時的Bug,感謝 taogeT
- 修正 tmp/templates_temp 建立Bug
- 修正顯示模板塊順序不正確的Bug
- 使用tornado的模板程式碼重構uliweb的模板實現,具體變化內容詳見 模板
- 新增 staticize 命令,實現靜態化
- 新增 __debug__ 引數用於跟蹤 i18n 語言的變化
- ORM多資料庫配置時,增加複製的支援,你可以在 CONNECTIONS 配置項中進行設定
- 向 ORM 中新增 set_session() 函式
- 向ORM中的 Property 類新增 fieldname 引數
- 向 load 和 loadtable 新增 -z 引數,感謝 linuxr
- 向模板的 Loader.load() 方法新增 layout 引數,可以用來實現動態模板繼承
- 新增 validatetemplate 命令,可以用來檢查專案,app或單個模板的語法是否正確。可以方便用來檢查升級到0.4後的模板問題。 詳情參見 validatetemplate
Uliweb並不是一個從頭開始的框架,它使用了一些較為成熟的庫,如:用來進行命令列、URL對映、Debug等核心處理的Werkzeug; 用來生成和處理請求、響應物件的webob;強大的ORM庫SqlAlchemy等等。Uliweb在開發 中還借鑑了象web2py的 Template模板模組,Django的一些設計思想和成果。
Uliweb是採用類Django的MVT的模型,整個專案將由若干個相對獨立的app構成,每個app將有自已的配置檔案,templates目 錄,static目錄等。URL可以自動對映也可以手動對映。模板中可以直接嵌入Python程式碼,但是你不需要關心程式碼的縮近,只要注意在塊結束前加上 pass語句。對資料庫的處理使用ORM的方式進行處理,同時你還可以直接使用底層的SQLAlchemy模組。支援程式碼和模板中的i18n的處理。 Uliweb還從Ulipad中移植了Plugin機制,可以方便地在框架中新增使用者特殊的處理。通過提供的命令列工具可以執行象啟動開發伺服器,匯出源 程式碼等操作。現在Uliweb可以在GAE,mod_wsgi,fastcgi,scgi,cgi等多種環境下部署。
除此之外,Uliweb框架中包含眾多自有的創新,如可用來生成HTML程式碼和對上傳的資料進行校驗的Form處理,包括對模板和頁面的i18n處理,框 架處理程式碼,從Ulipad中移植並進行了改造的外掛機制。
值得一提的是,Uliweb框架中將開發自己的ORM 機制Uliorm,Uliorm在SqlAlchemy基礎之上進行封裝,同時參考了GAE中datastore的程式碼。
來自:開源中國
評論(2)