心得 基於Flask技術的web部落格開發總結

2021-07-23 18:04:32 字數 1960 閱讀 2596

flask主要依賴werkzeng和jinja2模板。

werkzeng提供route,debug和web服務,jinja2模板提供網頁前端展示功能。

bootstrap是twitter的乙個開源框架,它提供的使用者介面的元件可以方便地在flask中復用。

表現層狀態轉移(representational state transfer,rest)架構

資源是 rest 架構方式的核心概念。在 rest 架構中,資源是程式中你要著重關注的事物。

開發完乙個專案之後,可以用

pip freeze > requirements.txt
來把開發中呼叫的依賴庫dump到乙個檔案。

當部署時,

pip install -r requirements.txt
就能一下子把所依賴的庫裝好。

這個部落格具備了使用者認證,表單校驗,使用者許可權資料庫管理,關注關係設定,部落格發布,個人主頁等功能。

對於每乙個功能,首先是從main/views.py下查詢對應的路由,然後經過表單驗證之後,跳轉相應的頁面。

這是藍圖blueprint,藍圖的作用是簡化路由:

from flask import blueprint

main = blueprint('main', __name__)

from . import views, errors

def

(config_name='default'):

from .main import main as main_blueprint

from .auth import auth as auth_blueprint

from .api_1_0 import api as api_1_0_blueprint

這是路由例子:

@main.route('/user/')

defuser

(username):

user = user.query.filter_by(username).first()

if user is

none:

abort(404)

posts = user.posts.order_by(post.timestamp.desc()).all()

return render_template('user.html', user=user, posts=posts)

每乙個頁面經過jinja2模板的復用之後,可以提高前端編輯效率

topcoder - post

id="comments">commentsh4>

class="comment-form">

}div>

class="pagination">

}div>

總的來說,flask核心很輕量,開發的功能主要是拿已有的一些模組組裝在一起。

可以使用冒號來定義對齊方式:

專案**

數量computer

1600 元

5phone

12 元

12pipe

1 元234

markdown extra定義列表語法:

專案1

專案2定義 a

定義 b

專案3定義 c

定義 d

定義d內容

**塊語法遵循標準markdown**,例如:

python

通過本編輯器離線寫部落格(直接在曾經使用過的瀏覽器中輸入write.blog.csdn.net/mdeditor即可。markdown編輯器使用瀏覽器離線儲存將內容儲存在本地。

基於Flask的最簡Web請求

這裡使用了flask作為web服務的框架,其簡單精悍,非常易學易用。如下 import logging.config import json from flask import flask from flask import make response,request logging.config....

python 基於flask的簡單web查詢程式

3個.py檔案 create html.py 利用pandas 將result生成 形式 mysql.py 連線資料庫獲取資料.from flask import flask from flask import request from create html import convert to h...

gae 部署基於flask的web伺服器

然後按照上面的說明解壓,安裝。由於flask是第三方庫,所以我們需要把flask庫檔案放在我們開發的應用裡,然後上傳上去。比如我們新建工程 mkdir hello 然後把lib拷貝到hello目錄下 cd hello vi hello.py from flask import flask def h...