发布于 2016-05-21 23:52:37 | 191 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的精品教程,程序狗速度看过来!

Uliweb Python Web开发框架

Uliweb是国人开发的一个开放源代码的Python Web Framework,Uliweb并不是一个从头开始的框架,它使用了一些较为成熟的库,如:用来进行命令行、URL映射、Debug等核心处理的Werkzeug; 用来生成和处理请求、响应对象的webob;强大的ORM库SqlAlchemy等等。


Uliweb 0.5 发布,更新如下:

功能优化

  • 增加 convert_bytes 函数,用来将大小转为 'K', 'M' 单位的字符串.

  • expand_path 增加expandvars和expanduser的处理 #1f3609d

  • 优化clean命令,增加排除参数 -x #9fcde0e

  • 优化认证处理,增加 auth_type 到 authenticate ,感谢 Chunlin Zhang #e3435d2

  • 在redis_cli中增加 get_lock, set_lock 函数, 增加一个mprpoplpush 的实现 #9dd6eb6

  • 优化ini的处理,支持dict中的环境变量使用

  • 优化reflectdb命令,支持dialect设置,如 uliweb reflectdb user -d oracle

Uliweb  0.5b1 更新内容:

问题修复

  • 修复 flashmessage 的配置 BUG

  • 修复 gitignore 模板

  • 修复 setup.py 模板

功能优化

  • json 函数增加对content_type的默认处理.当请求头中的 Accept 为 '*/*' 时, content_type 值为 application/json,当 Accept 的值中不含有 application/json 时, 则值为 text/plain, 否则为 application/json

  • 向 Dispatcher 中添加 parse_tag_xml 及 parse_tag 方法,用于方便处理taglib.前者用于解析 tag为数据结构,后者则将tag处理为HTML代码.

  • support 命令中删除掉不再支持的配置,如: bae, dotcloud, gae, fcgi等.

  • 添加 exportconfigjs 命令. 用于配合 uliweb-ui 项目,可以根据 ui_modules.js 生成需要的 config.js 用在 requirejs 中.

  • 增加 reflect_table(), reflect_table_data(), reflect_table_model 函数用于将数据库 反射为Model或数据结构.

  • 增加 Bulk 进行底层SQL的操作,并且支持多条一次执行.

Uliweb 0.5b0 更新内容:

问题修复

  • 修复pyini重入的BUG

  • 修复在执行 set_password 时自动执行 save 的BUG,改为不执行

  • 修复 Content-Range 头处理不正确的BUG, 感谢 zhangchunlin 的支持

  • 修复 StaticFilesMiddleware 中的URL没有使用 settings.DOMAINS 的配置的BUG, 感谢 zhangchunlin 的贡献

  • 修复 form 中传入 BooleanField 值为 None 时未转为 False 的BUG, 感谢 zhangchunlin 的贡献

  • 修复 pretty_dict 在处理unicode出错的BUG

普通功能优化

  • SortedDict 重构,以dict作为父类,并且支持传入初始化值.

  • 增加 Dispatcher 和 make_application reset 参数,可以用来决定是每次执行创建新的application 对象还是可以重用上次的对象.主要用在测试中,以便可以重用.

  • 增加按某个前缀对 redis 中的keys进行统计的函数 count_prefix(prefix)

  • 在 uliweb.utils.common 中添加获得临时文件的函数 get_tempfilename(prefix, dir='')

  • 修改 APP_URL 的定义形式为 {'prefix':''} ,只能是字典形式.增加 URL_ROUTE 的映射支持:

    [URL_ROUTE] any_key_1 = ('mapping_str', 'replacement') any_key_2 = ('mapping_str', 'replacement')

    可以把某个 URL 替换为指定值.如: ('/admin', '/demo')

  • 增加 pyini 在处理时,可以传入字典形式的初始化数据,如 x = Ini({'DEFAULT':{'x':1}})

  • 增加对带路径的对象的配置项的导入处理,通过 uliweb.utils.common 中新增 get_configrable_object(key, section, cls=None) 函数.对于象 key=path.to.model.function ,可以自动根据路径导入后面的对象.

  • 重构Form的校验功能,增加Form中的 rules 配置,方便前面实现前端校验处理

  • mail 支持 cc 转发参数, 感谢 zhangchunlin 的贡献

  • uliweb runserver 增加对运行单个 app 的支持.

  • 当返回一个generator时,可以通过 response.content_type 来设定上下文类型.

  • 在utils目录下增加 workers.py 用于方便生成带管理的父子进程调度处理. 查看

  • 向 utils/date.py 中添加 parse_time 函数,可以解析 1h, 5s 之类的时间格式

  • ListView 中增加 group_by 和 having 的参数支持

  • 在 uliweb.contrib.generic 中添加 MultiView 的支持,它提供了对 ListView, AddView, EditView 等的集成.

  • url_for 增加 _format=True 参数,可以将URL生成为参数形式,如对于 expose('/view/<name>/<int:value>') 的URL的定义,使用url_for(endpoint, _format=True) 生成结果为 '/view/{name}/{value}'

  • 增加 format_size() 函数,用于将数值转为大小描述,如 format_size(1026) 结果为 2KB

  • 集成 xltools.py 模块,用于对Excel的处理.需要安装 openpyxl 模块. 查看

  • 增加模板中对tag库的支持. 查看

  • 去除对 head.js 的支持

  • 向 application 添加 get_config() 用来读取其它的 ini 配置文件.和settings.ini类似,会自动 对所有生效的app下的配置文件进行合并处理.

  • 向 uliweb.contrib.auth 中 User 表中添加 auth_type 字段,将用于区分用户登录使用的方法.感谢 zhangchunlin 的贡献

命令行变化

  • 增加 uliweb 命令中传入环境变量的参数支持,通过 -Ea=b 的形式,可以传多个.

  • uliweb find -u url 增加显示view函数的docstring的功能.

  • 增加 uliweb find -U url_pattern 命令,可以显示带通配符的URL,如: uliweb find -U "blog*". 注意,模式对于 * 要添加双引号.

  • 增加ipython的支持,可以在启动 uliweb shell 时自动检测是否安装了ipython.如果使用 uliweb shell -n 可以启动 jupyter notebook.提供对uliweb的扩展,执行 %load_ext uliweb 就会自动将 application, functions, settings 注入到环境中.并且,可以对Model的类和实例查看相应的内容.类则可以看到建表语句及 表之间的关系图(需要安装graphviz).实例可以看到表结构对应的值.

  • 重构recorder命令

  • 增加 relectdb 命令,用于反向从数据库生成 models.py 文件

  • 增加 uliweb makemodule 命令,可以快速生成uliweb第三方模块的目录结构,要求以 uliweb- 开头, 但生成的模块名是 uliweb_

ORM 变化

  • 重构rawsql对postgresql的支持

  • 增强 OneToOne 的处理.修复结果不被缓存的bug.并且当访问 OneToOne 对象时,如果不存在,则会自动创建空对 象.并且当记录删除时,会自动将联带的 OneToOne 对象删除.

  • 增加动态创建Model的支持.可以根据配置信息自动生成新的Model.提供 create_model 方法.

  • 增加Model的移迁的支持.提供migrate方法,可以在运行时升级数据库.

  • 向 Property 中添加 to_column_info() 函数和向 Model 添加 get_columns_info() 函数可以方便 获得Property或Model的字段详细信息.

  • 添加:UUID, UUID_B, SMALLINT, BINARY, VARBINARY, JSON字段类型

  • 增加 ORMResetMiddle 中间件,可以对某些全局变量进行重置,如:set_echo的状态, signal发布状态

  • 向session中增加post_commit和post_commit_once回调,可以在提交事务后执行.

  • 增加 relectdb 命令,用于反向从数据库生成 models.py 文件

  • 增加除ID外,可以自定义主键的功能.

APP变化

  • 增加 model_config APP.用来实现Model动态迁移的支持

  • 增加 celery 的支持

  • 增加 datadict 功能,用来处理数据字典

  • 删除不用的APP:

    • bae 百度app engine的支持

    • dbupload 使用数据库来保存上传文件

    • heroku heroku的支持

    • sae 新浪app engine的支持

    • xmlrpc

不再内置的模块

  • pysimplesoap



历史版本 :
Uliweb 0.5 和 0.5b1,0.5b0 发布,Python 的 Web 框架
Uliweb 0.4.1 发布,Python 的 Web 框架
Uliweb 0.4 发布,Python 的 Web 框架
Uliweb 0.3.1 发布,Python 的 Web 框架
最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务