首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

Karrigell 入門指南:輕量級 Python Web 框架快速上手

     編輯:PHP 相關知識

簡介

Karrigell 是功能強大、靈活、安裝極簡的 Python Web 框架。內建 Web 服務器,亦易於與 Apache 等整合。適合 Python 初學者快速構建 Web 應用。

安裝與啟動

  1. SourceForge 下載最新 zip,解壓至任意目錄。
  2. 雙擊 Karrigell.py 啟動內建服務器(預設端口 80)。
  3. 若需與 Apache 共存:修改 Karrigell.ini 設 port=8080,或命令行 Karrigell.py -P 8080。

Apache 反向代理配置

httpd.conf 添加:

RewriteEngine On
RewriteRule ^/testarea(.*) https://localhost:8080/testarea$1 [P]

將 /testarea 下請求轉發至 Karrigell。亦可細化至 .py/.ks/.hip/.pih 等副檔名。

核心概念:Scripts 與 Services

Python Scripts (.py)

直接用 print 輸出 HTML:

print "<center>Hello!<br>Karrigell works.</center>"

處理表單:

if QUERY.has_key("name"):
    print "Your name is", QUERY["name"] + "."
else:
    print "<form><input name=name><input type=submit></form>"

Karrigell Services (.ks)

方法映射模式:URL /test.ks/method 調用 method()。

def index(): print "Index"
def test():  print "Test"

表單處理更自然:

def index():
    print "<form action=nameSubmit><input name=name><input type=submit></form>"
def nameSubmit(name):
    print "Your name is", name + "."

私有方法以下劃線開頭(_private),外部不可訪問。

HIP:HTML Inside Python (.hip)

移除 print,直接寫 HTML/字符串,框架自動輸出:

if QUERY.has_key("name"):
    "Your name is", QUERY["name"] + "."
else:
    "What is your name?<br>"
    "<form method=POST><input name=name><input type=submit></form>"

PIH:Python Inside HTML (.pih)

模板風格,代碼塊包裹在 <% ... %>:

<% import random %>
Random: <b><% print random.random() %></b>

<% if QUERY.has_key("name"): %>
    Your name is <%= QUERY["name"] %>.
<% else: %>
    <form method=POST><input name=name><input type=submit></form>
<% end %>

或用 <indent> 標籤管理縮進塊。

標籤庫與 Session

from HTMLTags import * → print CENTER(B("Test")) 程式化生成 HTML。
Session 支援內建,配置簡單。

總結

Karrigell 以「簡單」為核心,提供 Script/Service/HIP/PIH 四種開發模式,內建服務器、易整合 Apache,是 Python Web 入門與輕量專案的優選。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved