写点什么

Python Web 框架 UliWeb 开发进展

  • 2008-08-06
  • 本文字数:1559 字

    阅读完需:约 5 分钟

国产的 Python Web 开发框架 UliWeb 由啄木鸟社区的 Python 开发者 Limodou 发起并创建,项目启动后吸引了不少 Python 开发者的关注和加入。就 UliWeb 的项目发起初衷,Limodou写道

Uliweb 是一个新的 Python Web Framework,它之所以会产生是因为现有的框架多少有些令人不满意的地方,而且许多情况下这些不满意的地方或多或少对于 Web 开发有影响,因此在经 过对不少框架的学习之后,我决定开发一个新的框架,希望可以综合我认为其它框架中尽可能多的优点,同时使这个新的框架尽可能的简单,易于上手和使用。不过 这个框架目前主要还是一个人在做,并且是业余在做,所以在进度上相对要慢一些。

Uliweb 按照 GPL v2 协议开放源代码。Uliweb 并不是一个从头开始的框架,它使用了一些较为成熟的库,如:用来进行命令行、URL 映射、Debug 等核心处理的 Werkzeug ;用来生成和处理请求、响应对象的 webob ;强大的 ORM 库 SqlAlchemy 等等。Uliweb 在开发中还借鉴了象 web2py 的 Template 模板模块, Django 的一些设计思想和成果。就 Uliweb 框架的功能特点,Limodou 介绍道:

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 的代码。在谈到为何要设计自己的 ORM 框架,Limodou 这样回答:

在比较了若干的 Python ORM 模块之后,都不太让人满意。我比较喜欢 Django 的 ORM,不过它不太容易独立使用,并且与它的 Admin 功能绑得过于紧密。 SQLAlchemy 有几种 ORM 的映射方式,但是不太满足 Uliweb 的自动化的需求。其它的象 SQLObject 我不喜欢。web2py 的不好移植, 并且功能相对弱一些。Storm 是 LGPL 的,一旦有修改不方便应用。还有其它一些,不一而足。因此我以 SQLAlchemy 为基础,正在开发新的 Uliorm,一方面做为尝试,另一方面研究如何与框架绑定,这样可以更方便地为 Uliweb 服务。

目前 Uliweb 框架的开发工作正在稳步持续的进展当中,就目前的开发进度和下一步将实现的功能,Limodou 谈到:

目前 Uliweb 已经可以部署并运行在 GAE 环境上,但是由于 GAE 的 Datastore 相对特殊,还没有集成到 Uliorm 中,但框架的其它功能可以正 常使用,如:URL 映射,模板等。Uliweb 目前已经支持多种环境的部署,将继续增加新的部署方式。Uliorm 目前已经支持多对一的关系,下一步将增 加多对多,一对一的关系的处理。对 session, cache 进行进一步完善。继续完善文档,方便用户的开发。

基于 Python 的 Web 应用开发正在逐步增多,出现了基于 web.py 开发的 sohu 闪电邮这样的国内大型 Python Web 应用。国产 Web 开发框架 Uliweb 的出现,在为开发者提供另一个选择的同时也无疑增加了国内 Python 社区的活力和信心,期待 Uliweb 日 后的发布将会为 Python 社区增加新的动力,也期待更多感兴趣开发者加入进来,一起推动国产 Web 开发框架 Uliweb 的发展。

2008-08-06 05:5310900
用户头像

发布了 74 篇内容, 共 12.5 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

数据湖架构及概念简介

阿里云大数据AI技术

大数据 阿里云 技术交流

移动办公平台迎来定制潮,WorkPlus如何在钉钉和企微光环下 “出圈”?

BeeWorks

基于 GitHub 的数据库 CI/CD 最佳实践

Bytebase

GitHub cicd Github Actions SQL审批

安卓应用及鸿蒙应用安全检测指南

科技怪咖

华为云VSS漏洞扫描服务为你排除Apache log4j2隐患

科技怪咖

长安链 p2p-Liquid 架构设计学习笔记

长安链

CWE 4.7中的新视图 -- 工业控制系统的安全漏洞类别

科技怪咖

二进制SCA指纹提取黑科技: go语言逆向技术

科技怪咖

LeaRun.Java工作流引擎 快速开发业务流程

力软低代码开发平台

树莓派3b+ python3.5+opencv3.4.1下载安装及配置详解

Five

树莓派 OpenCV Python. 8月月更

CVE-2021-3129 分析

科技怪咖

开源一夏 | 一文读懂Shiro登录认证全流程

六月的雨在InfoQ

开源 shiro realm 8月月更 Subject

极狐GitLab 15.3 | issues 中建任务、许可证合规分析,超 30 项更新全面来袭!

极狐GitLab

DevOps gitlab 运维 API gitops

Hyperledger Cactus(一):架构初探

神奇视野

软件测试 | 测试开发 | 如何用Sonic云真机打王者

测吧(北京)科技有限公司

测试 scrcpy

CVE-2022-22947 分析

科技怪咖

数字藏品是什么?NFT系统开发。

开源直播系统源码

数字藏品 数字藏品开发 数字藏品系统 数字藏品软件

共识算法入门

神奇视野

如何用VSS一键自动化扫描软件包/固件,快速排查安全风险

科技怪咖

出海有道,融云携手生态伙伴打造「出海百宝箱」

融云 RongCloud

即时通讯 产品升级

OpenSergo & CloudWeGo 共同保障微服务运行时流量稳定性

阿里巴巴云原生

阿里云 开源 微服务 云原生

加密数字艺术背后你关心的几个问题

神奇视野

CVE-2022-22965 漏洞分析

科技怪咖

基于 Serverless+OSS 分分钟实现图片秒变素描

阿里巴巴云原生

阿里云 Serverless 云原生 OSS

Windows下python组件hyperscan的编译与安装

科技怪咖

A tour of gRPC:09 - gRPC Interceptor 拦截器

BUG侦探

gRPC RPC protocolBuffer

企业经营管理系统哪家好?功能十分全面的阿米巴经营管理系统

优秀

项目管理工具 企业经营管理

软件测试 | 测试开发 | HttpRunner初体验

测吧(北京)科技有限公司

HttpRunner

软件测试 | 测试开发 | App自动化之dom结构和元素定位方式(包含滑动列表定位)

测吧(北京)科技有限公司

DOM 自动化测试

华为云数字资产链,构建新型数字经济价值

神奇视野

软件测试 | 测试开发 | 如何利用 xUnit 框架对测试用例进行维护?

测吧(北京)科技有限公司

软件测试

Python Web框架UliWeb开发进展_Ruby_高昂_InfoQ精选文章