Flask實例教程二

一:Flask應用的佈局

好的一個web application需要有一個優良的項目結構用來組織代碼,這裏給大家推薦一個項目文件結構。

結構如下:

manage.py
requirements.txt
applicatipn/
app.py
config.py
filters.py
forms.py
__init__.py
models.py
static/
templates/

__init__.py是一個空文件,目的是爲了告訴python這個應用是被當作一個包。

config.py是用來存放一些配置信息,後面將會接受。

forms.py是用來實現表單類的,藉助了flask-wtf。

models.py是用來實現ORM,藉助了flask-sqlalchemy。

static目錄是存放一些靜態文件的,例如css樣式,js等

templates是存放一些網頁模板文件的。

requirements.txt 是用來存放這個web app使用了哪些擴展。其他用戶可以通過pip -r requirements.txt來批量下載這裏面的擴展

這些文件佔時都是空的,後面的教程將會一點一點往裏面加東西。

app.py存放了以下代碼:

# encoding=utf-8
from flask import Flask

app = Flask(__name__)

@app.route("/")
def index():
    return "Hello World!"

沒有了app.run,該怎麼讓這個代碼跑起來呢。這裏是使用manage.py來管理代碼的運行。

二:Flask的Script擴展

項目文件組織已經基本ok了那麼下一步需要藉助manage.py來實現對代碼的運行管理。

首先看一下manage.py中的內容:

# encoding=utf-8
from flask.ext.script import Manager
from app.app import app
manager = Manager(app)
app.config['DEBUG'] = True
if __name__ == '__main__':
 manager.run()

這個manage.py是需要flask的第三方擴展script來支持的,所以我們需要下載安裝script擴展。

wKiom1OK9U-gb3I_AACWQcKXMZc574.jpg

from flask.ext.script import Manager 從script中導入了Manager這個API

from application.app import app 從application這個項目中的app.py中導入了app對象(app對象是一個Flask 的WSCGI)

app.config['DEBUG'] = True 開啓調試模式

接着我們就可以使用manage.py來管理代碼的運行了

首先查看下manage.py的一些選項:

wKiom1OK9YuytyeEAACnmYYwIkU526.jpg

開始運行:

wKioL1OK9XfC_oNcAABxiXHBszw191.jpg

-h指定監聽的地址,-p指定監聽的端口

這個部分到此結束!!!!


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章