《Flask Web開發實戰:入門、進階與原理解析》筆記 --- 1. 初識Flask

  1. pip:安裝python包的工具,創建虛擬環境,可以擁有一個獨立的python解釋器環境。虛擬環境通過Virtualenv來創建,但是爲了更方便管理虛擬環境和依賴包,使用繼承了virtualenv的pipevn。

  2. 在項目目錄下,pipenv install創建一個虛擬環境,會在當前環境下創建一個文件夾,其中包含隔離的python解釋器環境,並安裝好pip wheel setuptools等基礎包,默認放在C:\Users<**>.virtualenvs

  3. pipenv 會自動幫我們管理虛擬環境,所以在執行pipenv install安裝包時,無論是否激活虛擬環境,都會安裝到虛擬環境中,只有需要在全局環境下安裝、更新、刪除包,纔會使用pip

  4. 在pycharm編輯器中可以設置在虛擬環境中運行File-settings
    在這裏插入圖片描述
    在這裏插入圖片描述
    括號中的就是虛擬環境

  5. 項目的結構:
    在這裏插入圖片描述

  6. flask run --port=8000 改變默認端口
    .flaskenv設置爲開發環境: FLASK_ENV=development 會開啓所有支持開發的特性,開發環境下,debug mode 將會被開啓,啓動程序會自動激活內置的調試器debugger和重載器reloading,會在開發帶來很大的幫忙

  7. app.route() 裏的參數成爲url規則,而不稱爲url
    url_for() 第一個參數爲端點(endpoint)值,端點用來標記一個視圖函數以及對應的url規則

@app.route('/')
def index():
    return '<h1>Hello, World!</h1>'
# 遞用url_for('index') 可獲得對應的url,'/'
# 如果url有動態部分:
@app.route('/greet', defaults={'name': 'Programmer'})
@app.route('/greet/<name>')
def greet(name):
    return '<h1>Hello, %s!</h1>' % name

url_for(‘greet’, name=‘Jack’) 會得到/greet/Jack,生成的是相對的url(內部)

import click
from flask import Flask

app = Flask(__name__)
# 傳入Flask類構造方法的第一個參數是模塊或包的名稱,這裏使用__name__,python會根據所處的模塊來賦予值,此處就是app
# 客戶端和服務器上的Flask程序的交互可以簡單概括爲:
# 1)用戶在瀏覽器輸入url訪問某個資源
# 2)Flask接受用戶請求並分析請求的url
# 3)爲這個url找到對應的處理函數
# 4)執行函數並生成相應,返回給瀏覽器
# 5)瀏覽器接受並解析響應,將信息顯示在頁面上。
# 上面這幾個步驟,大部分由flask完成。app.route()傳入參數

# the minimal Flask application
@app.route('/')
def index():
return '<h1>Hello, World!</h1>'


# bind multiple URL for one view function
# 一個視圖綁定多個url,點擊兩個url都會觸發相同的函數
@app.route('/hi')
@app.route('/hello')
def say_hello():
return '<h1>Hello, Flask!</h1>'


# dynamic route, URL variable default
# 動態綁定url,若果沒有defaults且不傳入變量,則會返回一個404錯誤響應
@app.route('/greet', defaults={'name': 'Programmer'})
@app.route('/greet/<name>')
def greet(name):
return '<h1>Hello, %s!</h1>' % name


# custom flask cli command
# 通過依賴包click內置CLI(Command Line Interface,命令行交互界面)系統 '
# 可註冊一個flask命令,flask hello,就會打印下面的問候。
@app.cli.command()
def hello():
 # Just say hello.
   click.echo('Hello, Human!')
  1. 運行demos/hello:
    在這裏插入圖片描述
    運行時會查找到demos/hello/app.py

  2. 運行app.cli.command裝飾器中註冊的命令: 在這裏插入圖片描述

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