SlideShare ist ein Scribd-Unternehmen logo
1 von 31
Uliweb框架介绍
为什么选Uliweb
易学易用
功能强大
什么是Uliweb
• 基于Python语言的Web开发框架
• 2008年开始开发
• 最新版本是0.4.1
URL
URL解析
调用处理方法
数据库操作 模板调用 JSON数据 图像 异步处理
结果
数据库
CacheSession
邮件
展示
I18N
权限
组织 URL
模板 静态资源 API
应用
配置 处理方法
数据
NoSQL 文件处理
Form
功能复用
开发服务器
测试
命令行
开发 部署
静态文件导出
与常见环境的集成
配置信息
命令行
运维
功能扩展
运行监控
日志分析
开发效率 适用性灵活性 性能,稳定,易扩展
设计理念
可复用
可配置
可替换
快速开发
模块化组织
多级配置
配置替换
组件及代码生成
有意思的特性
APP的组织方式
project/
apps/
settings.ini
local_settings.ini
app1/
templates/
static/
views.py
models.py
settings.ini
app2/
wsgi_handler.py
APP的配置
[GLOBAL]
INSTALLED_APPS = [
'uliweb.contrib.auth',
'uliweb.contrib.staticfiles',
'uliweb.contrib.orm',
'uliweb.contrib.upload',
'uliweb.contrib.template',
'uliweb.contrib.i18n',
…
'app1'
]
settings.ini的执行
• uliweb.core/default_settings.ini
• $(app)/settings.ini ->按APP的定义顺序进行覆盖
• apps/settings.ini
• apps/local_settings.ini
settings.ini示例
#coding=utf8
[GLOBAL]
INSTALLED_APPS = [
'uliweb.contrib.staticfiles',
]
[MENUS_CONFIG]
menu_render =
'uliweb_admin.admin.menu_render'
多种View的定义模式
• 函数方式
@expose(‘/‘)
def index():
return “Hello, Uliweb”
• 类方式
@expose(‘/blog’)
class Blog(object):
@expose(‘’)
def index(self):
return {}
模板自动套用
• view为函数时,放在app下的
templates/function_name.html
• view为类时,放在app下的
templates/classname/method_name.html
强大的模板
• 支持模板的继承、包含
• 可以直接插入python代码,在代码块缩近时使用pass
,自动缩排
• 先编译后使用
资源引用
use, link
{{use “avalon”}}
{{link “test.js”}}
‘uliweb.contrib.template’
<script type="text/javascript"
src="/static/avalon/avalon.js?ver=18"></scrip
t>
<script type="text/javascript"
src="/static/avalon/avalon_init.js?ver=18"></
script>
[FUNCTIONS]
get_model = 'uliweb.orm.get_model'
get_object = 'uliweb.orm.get_object'
set_echo = 'uliweb.orm.set_echo'
from uliweb import functions
User = functions.get_model(‘user’)
functions 通用函数调用
ORM
• 基于SQLAlchemy改造
• 支持一对一,一对多,多对多关系
• 支持多数据库
• 集成alembic实现Model的自动迁移
• Model可以配置
配置化
[MODELS]
wikipage = 'wiki.models.WikiPage'
wikichangeset = 'wiki.models.WikiChangeSet'
get_model()
from uliweb import functions
User = functions.get_model(‘user’)
Alembic集成pip install uliweb-alembic
uliweb alembic init
uliweb alembic diff
uliweb alembic upgrade
强大的命令行
• 创建项目
• 创建APP
• 启用开发服务器
• ORM相关的命令 :建表,重置,迁移,生成文档,生成建表语
句,卸载数据,装入数据,生成dot图
• 查找命令:URL对应的view, 模板,静态文件等
• 静态文件导出
• I18N翻译信息提取
自定义命令
• 可以在APP下创建自已的命令
• 使用uliweb makecmd来自动生成模板
• 支持子命令
uliweb shell
• 自动启动应用,以及导入常见对象,如application, settings,
functions
• 支持IPython,如果安装了ipython会自动使用,通过
uliweb shell –notebook
来启动IPython Notebook
Hello, Uliweb例子
• uliweb makeproject Hello
• cd Hello
• uliweb makeapp World
• uliweb runserver (访问 http://localhost:8000)
相关资源
• 项目: https://github.com/limodou/uliweb
• 文档:http://limodou.github.io/uliweb-
doc/zh_CN/index.html
Q&A

Weitere ähnliche Inhalte

Was ist angesagt?

王涛:基于Cloudera impala的非关系型数据库sql执行引擎
王涛:基于Cloudera impala的非关系型数据库sql执行引擎王涛:基于Cloudera impala的非关系型数据库sql执行引擎
王涛:基于Cloudera impala的非关系型数据库sql执行引擎
hdhappy001
 
00.exalogic概览
00.exalogic概览00.exalogic概览
00.exalogic概览
Meng He
 
阿里巴巴运维自动化的探索与规划
阿里巴巴运维自动化的探索与规划阿里巴巴运维自动化的探索与规划
阿里巴巴运维自动化的探索与规划
mysqlops
 

Was ist angesagt? (20)

Rest与面向资源的web开发
Rest与面向资源的web开发Rest与面向资源的web开发
Rest与面向资源的web开发
 
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練2
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練22016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練2
2016年逢甲大學資訊系:ASP.NET MVC 4 教育訓練2
 
ASP.Net WebAPI經驗分享
ASP.Net WebAPI經驗分享ASP.Net WebAPI經驗分享
ASP.Net WebAPI經驗分享
 
GDG Taichung - Firebase Introduction 01
GDG Taichung - Firebase Introduction 01GDG Taichung - Firebase Introduction 01
GDG Taichung - Firebase Introduction 01
 
架構設計-資料存取的選擇
架構設計-資料存取的選擇架構設計-資料存取的選擇
架構設計-資料存取的選擇
 
給開發人員的資料庫效能建議
給開發人員的資料庫效能建議給開發人員的資料庫效能建議
給開發人員的資料庫效能建議
 
查詢調校不求人
查詢調校不求人查詢調校不求人
查詢調校不求人
 
我們與Azure DevOps的距離
我們與Azure DevOps的距離我們與Azure DevOps的距離
我們與Azure DevOps的距離
 
Alibaba数据库运维最佳实践
Alibaba数据库运维最佳实践Alibaba数据库运维最佳实践
Alibaba数据库运维最佳实践
 
王涛:基于Cloudera impala的非关系型数据库sql执行引擎
王涛:基于Cloudera impala的非关系型数据库sql执行引擎王涛:基于Cloudera impala的非关系型数据库sql执行引擎
王涛:基于Cloudera impala的非关系型数据库sql执行引擎
 
00.exalogic概览
00.exalogic概览00.exalogic概览
00.exalogic概览
 
Query store查詢調校新利器
Query store查詢調校新利器Query store查詢調校新利器
Query store查詢調校新利器
 
It基础架构的自动化编排
It基础架构的自动化编排It基础架构的自动化编排
It基础架构的自动化编排
 
阿里巴巴运维自动化的探索与规划
阿里巴巴运维自动化的探索与规划阿里巴巴运维自动化的探索与规划
阿里巴巴运维自动化的探索与规划
 
Train.IO 【第六期-OpenStack 二三事】
Train.IO 【第六期-OpenStack 二三事】Train.IO 【第六期-OpenStack 二三事】
Train.IO 【第六期-OpenStack 二三事】
 
阿里巴巴运维团队的无状态运维思路
阿里巴巴运维团队的无状态运维思路阿里巴巴运维团队的无状态运维思路
阿里巴巴运维团队的无状态运维思路
 
D baa s_in_xiaomi
D baa s_in_xiaomiD baa s_in_xiaomi
D baa s_in_xiaomi
 
美团点评技术沙龙14美团云-Docker平台
美团点评技术沙龙14美团云-Docker平台美团点评技术沙龙14美团云-Docker平台
美团点评技术沙龙14美团云-Docker平台
 
数据库变更管理-Phpmig
数据库变更管理-Phpmig数据库变更管理-Phpmig
数据库变更管理-Phpmig
 
DevOps Monitoring Tools 大亂鬥 - Azure Log Analytics 使用經驗分享
DevOps Monitoring Tools 大亂鬥 - Azure Log Analytics 使用經驗分享DevOps Monitoring Tools 大亂鬥 - Azure Log Analytics 使用經驗分享
DevOps Monitoring Tools 大亂鬥 - Azure Log Analytics 使用經驗分享
 

Andere mochten auch

03.python工作环境
03.python工作环境03.python工作环境
03.python工作环境
modou li
 
Algebra I Warm-ups
Algebra I Warm-upsAlgebra I Warm-ups
Algebra I Warm-ups
guest3ce8ee0
 
Uliweb框架思想与编程
Uliweb框架思想与编程Uliweb框架思想与编程
Uliweb框架思想与编程
modou li
 
Python面向对象开发基础篇
Python面向对象开发基础篇Python面向对象开发基础篇
Python面向对象开发基础篇
modou li
 
Or Sam Opiates &amp; Opioids 04 19 2011
Or Sam Opiates &amp; Opioids 04 19 2011Or Sam Opiates &amp; Opioids 04 19 2011
Or Sam Opiates &amp; Opioids 04 19 2011
bardlomlarry
 
HR practices in infosys
HR practices in infosysHR practices in infosys
HR practices in infosys
Bhasker Rajan
 
Stratégie digital-cci-rennes-btob-btoc-2013
Stratégie digital-cci-rennes-btob-btoc-2013Stratégie digital-cci-rennes-btob-btoc-2013
Stratégie digital-cci-rennes-btob-btoc-2013
Gregoire Lockhart
 
"Génération Y, de A à Z" par MEC Paris
"Génération Y, de A à Z" par MEC Paris"Génération Y, de A à Z" par MEC Paris
"Génération Y, de A à Z" par MEC Paris
agenceMEC
 

Andere mochten auch (20)

01.python介绍
01.python介绍01.python介绍
01.python介绍
 
03.python工作环境
03.python工作环境03.python工作环境
03.python工作环境
 
Uliweb比较与实践 2013
Uliweb比较与实践 2013Uliweb比较与实践 2013
Uliweb比较与实践 2013
 
03.uliweb开发进阶
03.uliweb开发进阶03.uliweb开发进阶
03.uliweb开发进阶
 
04.uliweb更多话题介绍
04.uliweb更多话题介绍04.uliweb更多话题介绍
04.uliweb更多话题介绍
 
02.python基础
02.python基础02.python基础
02.python基础
 
Uliweb cheat sheet_0.1
Uliweb cheat sheet_0.1Uliweb cheat sheet_0.1
Uliweb cheat sheet_0.1
 
Algebra I Warm-ups
Algebra I Warm-upsAlgebra I Warm-ups
Algebra I Warm-ups
 
Uliweb 快速易用的Python Web Framework
Uliweb 快速易用的Python Web FrameworkUliweb 快速易用的Python Web Framework
Uliweb 快速易用的Python Web Framework
 
Uliweb框架思想与编程
Uliweb框架思想与编程Uliweb框架思想与编程
Uliweb框架思想与编程
 
02.uliweb开发入门
02.uliweb开发入门02.uliweb开发入门
02.uliweb开发入门
 
Python面向对象开发基础篇
Python面向对象开发基础篇Python面向对象开发基础篇
Python面向对象开发基础篇
 
Or Sam Opiates &amp; Opioids 04 19 2011
Or Sam Opiates &amp; Opioids 04 19 2011Or Sam Opiates &amp; Opioids 04 19 2011
Or Sam Opiates &amp; Opioids 04 19 2011
 
Pregnancy with beta thalassemia
Pregnancy with beta thalassemiaPregnancy with beta thalassemia
Pregnancy with beta thalassemia
 
MANAGEMENT OF HYPEREMESIS GRAVIDARUM
    MANAGEMENT OF HYPEREMESIS GRAVIDARUM    MANAGEMENT OF HYPEREMESIS GRAVIDARUM
MANAGEMENT OF HYPEREMESIS GRAVIDARUM
 
Loreal case study
Loreal case studyLoreal case study
Loreal case study
 
HR practices in infosys
HR practices in infosysHR practices in infosys
HR practices in infosys
 
Programme du PLFI 2013
Programme du PLFI 2013 Programme du PLFI 2013
Programme du PLFI 2013
 
Stratégie digital-cci-rennes-btob-btoc-2013
Stratégie digital-cci-rennes-btob-btoc-2013Stratégie digital-cci-rennes-btob-btoc-2013
Stratégie digital-cci-rennes-btob-btoc-2013
 
"Génération Y, de A à Z" par MEC Paris
"Génération Y, de A à Z" par MEC Paris"Génération Y, de A à Z" par MEC Paris
"Génération Y, de A à Z" par MEC Paris
 

Ähnlich wie 01.uliweb介绍

构建基于Lamp的网站架构
构建基于Lamp的网站架构构建基于Lamp的网站架构
构建基于Lamp的网站架构
Cosey Lee
 
民间秘方
民间秘方民间秘方
民间秘方
dynasty
 
信息系统开发平台OpenExpressApp
信息系统开发平台OpenExpressApp信息系统开发平台OpenExpressApp
信息系统开发平台OpenExpressApp
zhoujg
 
Accelerate Database as a Service(DBaaS) in Cloud era
Accelerate Database as a Service(DBaaS) in Cloud eraAccelerate Database as a Service(DBaaS) in Cloud era
Accelerate Database as a Service(DBaaS) in Cloud era
Junchi Zhang
 
03.wls depoly jdbc
03.wls depoly jdbc03.wls depoly jdbc
03.wls depoly jdbc
Meng He
 
Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境
Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境
Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境
drewz lin
 
低成本和高性能MySQL云架构探索
低成本和高性能MySQL云架构探索低成本和高性能MySQL云架构探索
低成本和高性能MySQL云架构探索
Feng Yu
 
欢迎使用SQL Anywhere 11
欢迎使用SQL Anywhere 11欢迎使用SQL Anywhere 11
欢迎使用SQL Anywhere 11
zc_ncepu
 
数据库持续集成
数据库持续集成数据库持续集成
数据库持续集成
wait4friend
 
Nodejs & NAE
Nodejs & NAENodejs & NAE
Nodejs & NAE
q3boy
 

Ähnlich wie 01.uliweb介绍 (20)

敦群學院-SharePoint精英計畫-系統管理-Day 2
敦群學院-SharePoint精英計畫-系統管理-Day 2敦群學院-SharePoint精英計畫-系統管理-Day 2
敦群學院-SharePoint精英計畫-系統管理-Day 2
 
构建基于Lamp的网站架构
构建基于Lamp的网站架构构建基于Lamp的网站架构
构建基于Lamp的网站架构
 
价值中国网站开发、管理经验探讨、分享、交流
价值中国网站开发、管理经验探讨、分享、交流价值中国网站开发、管理经验探讨、分享、交流
价值中国网站开发、管理经验探讨、分享、交流
 
民间秘方
民间秘方民间秘方
民间秘方
 
信息系统开发平台OpenExpressApp
信息系统开发平台OpenExpressApp信息系统开发平台OpenExpressApp
信息系统开发平台OpenExpressApp
 
Accelerate Database as a Service(DBaaS) in Cloud era
Accelerate Database as a Service(DBaaS) in Cloud eraAccelerate Database as a Service(DBaaS) in Cloud era
Accelerate Database as a Service(DBaaS) in Cloud era
 
Langchain and Azure ML and Open AI
Langchain and Azure ML and Open AILangchain and Azure ML and Open AI
Langchain and Azure ML and Open AI
 
Portfolio
PortfolioPortfolio
Portfolio
 
03.wls depoly jdbc
03.wls depoly jdbc03.wls depoly jdbc
03.wls depoly jdbc
 
Web development introduced history and future
Web development introduced history and futureWeb development introduced history and future
Web development introduced history and future
 
Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境
Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境
Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境
 
低成本和高性能MySQL云架构探索
低成本和高性能MySQL云架构探索低成本和高性能MySQL云架构探索
低成本和高性能MySQL云架构探索
 
欢迎使用SQL Anywhere 11
欢迎使用SQL Anywhere 11欢迎使用SQL Anywhere 11
欢迎使用SQL Anywhere 11
 
淘宝网架构变迁和挑战(Oracle架构师日)
淘宝网架构变迁和挑战(Oracle架构师日)淘宝网架构变迁和挑战(Oracle架构师日)
淘宝网架构变迁和挑战(Oracle架构师日)
 
微服務架構 導入經驗分享 吳剛志 - Community Open Camp
微服務架構 導入經驗分享 吳剛志 - Community Open Camp微服務架構 導入經驗分享 吳剛志 - Community Open Camp
微服務架構 導入經驗分享 吳剛志 - Community Open Camp
 
数据库持续集成
数据库持续集成数据库持续集成
数据库持续集成
 
Nodejs & NAE
Nodejs & NAENodejs & NAE
Nodejs & NAE
 
Angular js twmvc#17
Angular js twmvc#17Angular js twmvc#17
Angular js twmvc#17
 
Kubernetes project update and how to contribute
Kubernetes project update and how to contributeKubernetes project update and how to contribute
Kubernetes project update and how to contribute
 
敦群學院-SharePoint精英計畫-系統開發-Day 3
敦群學院-SharePoint精英計畫-系統開發-Day 3敦群學院-SharePoint精英計畫-系統開發-Day 3
敦群學院-SharePoint精英計畫-系統開發-Day 3
 

01.uliweb介绍