欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

為Python的web框架編寫MVC配置來使其運(yùn)行的教程

 更新時間:2015年04月30日 09:50:45   作者:廖雪峰  
這篇文章主要介紹了為Python的web框架編寫MVC配置來使其運(yùn)行的教程,示例代碼基于Python2.x版本,需要的朋友可以參考下

現(xiàn)在,ORM框架、Web框架和配置都已就緒,我們可以開始編寫一個最簡單的MVC,把它們?nèi)繂悠饋怼?/p>

通過Web框架的@decorator和ORM框架的Model支持,可以很容易地編寫一個處理首頁URL的函數(shù):

# urls.py
from transwarp.web import get, view
from models import User, Blog, Comment

@view('test_users.html')
@get('/')
def test_users():
  users = User.find_all()
  return dict(users=users)

@view指定的模板文件是test_users.html,所以我們在模板的根目錄templates下創(chuàng)建test_users.html:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8" />
  <title>Test users - Awesome Python Webapp</title>
</head>
<body>
  <h1>All users</h1>
  {% for u in users %}
  <p>{{ u.name }} / {{ u.email }}</p>
  {% endfor %}
</body>
</html>

接下來,我們創(chuàng)建一個Web App的啟動文件wsgiapp.py,負(fù)責(zé)初始化數(shù)據(jù)庫、初始化Web框架,然后加載urls.py,最后啟動Web服務(wù):

# wsgiapp.py
import logging; logging.basicConfig(level=logging.INFO)
import os

from transwarp import db
from transwarp.web import WSGIApplication, Jinja2TemplateEngine

from config import configs

# 初始化數(shù)據(jù)庫:
db.create_engine(**configs.db)

# 創(chuàng)建一個WSGIApplication:
wsgi = WSGIApplication(os.path.dirname(os.path.abspath(__file__)))
# 初始化jinja2模板引擎:
template_engine = Jinja2TemplateEngine(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'templates'))
wsgi.template_engine = template_engine

# 加載帶有@get/@post的URL處理函數(shù):
import urls
wsgi.add_module(urls)

# 在9000端口上啟動本地測試服務(wù)器:
if __name__ == '__main__':
  wsgi.run(9000)

如果一切順利,可以用命令行啟動Web服務(wù)器:

$ python wsgiapp.py

然后,在瀏覽器中訪問http://localhost:9000/。

如果數(shù)據(jù)庫的users表什么內(nèi)容也沒有,你就無法在瀏覽器中看到循環(huán)輸出的內(nèi)容??梢宰约涸贛ySQL的命令行里給users表添加幾條記錄,然后再訪問:

201543094726497.jpg (401×274)

相關(guān)文章

  • 對pandas的層次索引與取值的新方法詳解

    對pandas的層次索引與取值的新方法詳解

    今天小編就為大家分享一篇對pandas的層次索引與取值的新方法詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • Python高級文件操作之shutil庫詳解

    Python高級文件操作之shutil庫詳解

    這篇文章主要介紹了Python高級文件操作之shutil庫詳解,文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)python的小伙伴們有很大的幫助,需要的朋友可以參考下
    2021-05-05
  • Python編程不要再使用print調(diào)試代碼了

    Python編程不要再使用print調(diào)試代碼了

    這篇文章主要為大家介紹了Python編程中代碼的調(diào)試技巧,不要只會用print調(diào)試哦~其他的Python調(diào)試技巧,大家來一起共同學(xué)習(xí)下吧,祝大家多多進(jìn)步,早日升職加薪
    2021-10-10
  • 利用Python將時間或時間間隔轉(zhuǎn)為ISO 8601格式方法示例

    利用Python將時間或時間間隔轉(zhuǎn)為ISO 8601格式方法示例

    國際標(biāo)準(zhǔn)化組織的國際標(biāo)準(zhǔn)ISO8601是日期和時間的表示方法,全稱為《數(shù)據(jù)存儲和交換形式·信息交換·日期和時間的表示方法》,下面這篇文章主要給大家介紹了關(guān)于利用Python將時間或時間間隔轉(zhuǎn)為ISO 8601格式的相關(guān)資料,需要的朋友可以參考下。
    2017-09-09
  • python pandas 對時間序列文件處理的實例

    python pandas 對時間序列文件處理的實例

    今天小編就為大家分享一篇python pandas 對時間序列文件處理的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • Python 制作糗事百科爬蟲實例

    Python 制作糗事百科爬蟲實例

    本文是結(jié)合前面的三篇關(guān)于python制作爬蟲的基礎(chǔ)文章,給大家分享的一份爬取糗事百科的小段子的源碼,有需要的小伙伴可以參考下
    2016-09-09
  • python基于urllib實現(xiàn)按照百度音樂分類下載mp3的方法

    python基于urllib實現(xiàn)按照百度音樂分類下載mp3的方法

    這篇文章主要介紹了python基于urllib實現(xiàn)按照百度音樂分類下載mp3的方法,涉及Python使用urllib模塊操作頁面元素的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • 詳解Python3序列賦值、序列解包

    詳解Python3序列賦值、序列解包

    這篇文章主要介紹了Python3序列賦值、序列解包的相關(guān)知識,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-05-05
  • Python使用pandas實現(xiàn)對數(shù)據(jù)進(jìn)行特定排序

    Python使用pandas實現(xiàn)對數(shù)據(jù)進(jìn)行特定排序

    在數(shù)據(jù)分析和處理過程中,排序是一項常見而重要的操作,本文將詳細(xì)介紹如何利用pandas對數(shù)據(jù)進(jìn)行特定排序,包括基本排序、多列排序、自定義排序規(guī)則等方面的內(nèi)容,需要的可以了解下
    2024-03-03
  • 利用Python將彩色圖像轉(zhuǎn)為灰度圖像的兩種方法

    利用Python將彩色圖像轉(zhuǎn)為灰度圖像的兩種方法

    這篇文章主要給大家介紹了關(guān)于利用Python將彩色圖像轉(zhuǎn)為灰度圖像的兩種方法,以及python 批量將圖片轉(zhuǎn)為灰度圖的方法,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-12-12

最新評論