Uliweb是一个新的Python Web Framework,它之所以会产生是因为现有的框架多少有些令人不满意的地方,而且许多情况下这些不满意的地方或多或少对于Web开发有影响,因此在经 过对不少框架的学习之后,我决定开发一个新的框架,希望可以综合我认为其它框架中尽可能多的优点,同时使这个新的框架尽可能的简单,易于上手和使用。不过 这个框架目前主要还是一个人在做,并且是业余在做,所以在进度上相对要慢一些。
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的代码。
Uliweb是一个全栈式的python web 框架 框架的的核心是采用werkzeug 作为框架的核心处理 类似于Java中的spring 个人理解 持久化框架 sqlAlchemy 是基于Uliorm作为orm 对数据进行处理 uliweb 安装 uliweb 目前不主持python3.x的环境 所以还需要在机器上安装python2.x windows 上安装多版本python 参考http:
这是目前我的一个尝试。随着uliweb的项目多起来(为了便于管理和隔离,我们会考虑将不同的功能拆分为不同的项目),需要有时复用其它项目的模块,比如:用户管理等。uliweb项目是可以将一个满足条件的python包(使用 uliweb makeapp appname)作为外部的app在INSTALLED_APPS中配置的。但是对于使用 uliweb makeproject projectname 生
URL映射¶ Uliweb使用Werkzeug的Routing来进行URL的处理。当你使用manage.py的makeapp命令生成一个新 的App时,它会自动生成views.py文件,其中会自动从uliweb.core.SimpleFrame中导出expose 函数,它是一个decorator函数,用于修饰view函数。 通过expose可以将一个URL与一个view函数进行绑定,然后通过url
本章重点介绍Web框架及其部署。 PyCharm具有部署代码和文件的简单功能。 要使用PyCharm部署代码,我们需要添加一个带有菜单选项Settings -》 Build, Execution-》 Deployment的Web服务器。 现在,包括部署项目所需的各种配置的所有设置。 在Mappings选项卡中,用户可以指定本地代码的位置以及远程复制到何处。 可以使用Tools -》 Deploym
tornado.web — RequestHandler and Application classes Thread-safety notes Request handlers Entry points Input Output Cookies Other Application configuration Decorators Everything else tornado.template
本章重点介绍Web框架及其部署。 PyCharm具有部署代码和文件的简单功能。 要使用PyCharm部署代码,我们需要添加一个带有菜单选项:Settings -> Build, Execution -> Deployment 来部署Web服务器。 现在,包含部署项目所需的各种配置的所有设置。 在Mappings 选项卡中,用户可以指定本地代码的位置以及它应该远程复制到的位置。 代码可以使用工具菜单
22. Web MVC框架
第十三章介绍了如何开发一个Web框架,通过介绍MVC、路由、日志处理、配置处理完成了一个基本的框架系统,但是一个好的框架需要一些方便的辅助工具来快速的开发Web,那么我们这一章将就如何提供一些快速开发Web的工具进行介绍,第一小节介绍如何处理静态文件,如何利用现有的twitter开源的bootstrap进行快速的开发美观的站点,第二小节介绍如何利用前面介绍的session来进行用户登录处理,第三小
了解了WSGI框架,我们发现:其实一个Web App,就是写一个WSGI的处理函数,针对每个HTTP请求进行响应。 但是如何处理HTTP请求不是问题,问题是如何处理100个不同的URL。 每一个URL可以对应GET和POST请求,当然还有PUT、DELETE等请求,但是我们通常只考虑最常见的GET和POST请求。 一个最简单的想法是从environ变量里取出HTTP请求的信息,然后逐个判断: de
了解了WSGI框架,我们发现:其实一个Web App,就是写一个WSGI的处理函数,针对每个HTTP请求进行响应。 但是如何处理HTTP请求不是问题,问题是如何处理100个不同的URL。 每一个URL可以对应GET和POST请求,当然还有PUT、DELETE等请求,但是我们通常只考虑最常见的GET和POST请求。 一个最简单的想法是从environ变量里取出HTTP请求的信息,然后逐个判断: de
Python 作为一门强大的脚本语言,能够适应快速原型和较大项目的制作,它被广泛用于 web 应用程序的开发中。 Context WSGI Web 服务网关接口 (简称为 "WSGI" ) 是一种在 Web 服务器和 Python Web 应用程序框架之间的标准接口。 通过标准化 Web 服务器和Python web 应用程序框架之间的行为和通信,WSGI 使得编写可移植的的 Python web