Karrigell Web框架开发简介

Karrigell 是一个语法简洁直观的 Python Web 框架。它支持任何一种数据库, ORM 或者模板引擎,也可以让开发人员选择不同的编码方式。
  
Karrigell 包自带一个功能强大的 web 服务器和一个用 Python 写成的数据库引擎 PyDbLite ,在自带的 demo 程序中使用到了这个引擎。
  
Karrigell 可以通过配置来与其它的 web 服务器一起工作如 Apache,Xitami,LightTPD Karrigell 还可以结合 Python 的其它数据库 (sqlite, mySql, PostGreSQL, ZODB, etc) 接口来创建数据库应用程序。
  
Karrigell 还自带了一个对 MySQL 数据库表进行 CRUD 操作的应用程序,可以方便的创建和编辑 MySQL 并且可以在线生成脚本。
   
要想使用 Karrigell 创建动态页面,你需要知道 HTML Python 的一些知识。你也要选择 Karrigell 提供的不同的编码方式。下面是 “Hello world” 程序使用的 5 种不同的编码方式:
      
Python script (hello.py)
Karrigell service (hello.ks)
print "Hello, world !"
def index():
    print "Hello, world !"
HTML Inside Python (hello.hip)
Python Inside HTML (hello.pih)
"Hello, world !"
Hello, world !
CGI script (hello.py
in folder cgi-bin)
 
print "Content-type: text/html"
print
print "Hello, world !"
 

如果要想像这样写一些Python代码的话,例如打印09的数字序列:

Python script
Karrigell service
print "<h1>Squares</h1>"
for i in range(10):
    print "%s :<b>%s</b>" %(i,i*i)
def index():
    print "<h1>Squares</h1>"
    for i in range(10):
        print "%s :<b>%s</b>" %(i,i*i)
HTML Inside Python
Python Inside HTML
"<h1>Squares</h1>"
for i in range(10):
    "%s :<b>%s</b>" %(i,i*i)
<h1>Squares</h1>
<%
for i in range(10):
    print "%s :<b>%s</b>" %(i,i*i)
%>
CGI script
 
print 'Content-type: text/html'
print
print "<h1>Squares</h1>"
for i in range(10):
    print "%s :<b>%s</b>" %(i,i*i)
 
  
总之我们可以使用:
  • 可以使用普通的 Python 脚本
  • Karrigell services 是一种 Python 脚本,它的每一个函数都匹配一个不同的 URL foo.ks/bar 匹配 foo.ks 脚本中的 bar() 函数 ( 如果没有指定函数 , 默认使用 index() 函数 )
  • HTML inside Python 是另一种写 Python 脚本的方式,在运行时当遇到 print 语句就会把要输出的字符串发送给客户端浏览器
  • Python inside HTML 是一种非常像 ASP,JSP,PHP 的写法, Python 写在 HTML 页面 < % %> 标记中
  • 还可以直接使用 CGI 脚本:参见文档的 cgi module 章节 

Python代码在一个包含HTTP环境,表单字段,自定义异常的命名空间下运行。当一个表单包括字段<INPUT name="myfield">,它的值可以在脚本中使用_myfield来得到。

在身份认证和Session方面,可以在脚本中使用两个叫做AuthenticationSession函数来处理。Authentication的第一个参数是一个测试函数,用来检查是否接受输入的AUTH_USERAUTH_PASSWORDSession()用来初始化一个session对象并设置或读取它的属性值或者得到一个session

Include(file_or_script)函数在当前脚本插入脚本或者文件的输出结果;例如它可用在页头或者页尾。

Karrigell 自带一个详细的 documentation (en français) 和一组示例文件,包括一个迷你版的 Wiki 服务器。
可以到 Sourceforge project page 或者后面的链接去下载一个最新的稳定版本,也可以 download 当前正在开发的不稳定版本。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值