[翻譯] Flask Blueprints---Explore Flask

王小波說翻譯最見一我的的文學功底,如今相信了。
若是徹底按照本身的話組織,老是能適應本身的習慣,相對來講寫起來可能更爲流暢。
可是翻譯,即使清楚的理解了做者的意思,每每還要同時考慮原文的結構,反倒表達不清楚。
對於能力欠佳的我,暫時先翻譯這麼多吧html

推薦你們直接看原文
原文連接 Explore Flaskflask

What is a Blueprint?


Blueprint是定義了一系列供Web應用使用的視圖、模版、靜態文件以及其餘的一些對象的集合。網絡

好比咱們已經有了一個使用Blueprint開發的用戶管理界面。這個Blueprint能夠定義視圖,這些視圖對應於路徑,好比/admin/login 和/admin/dashboard.同時能夠包括模版和靜態文件。app

咱們能夠將上述的"用戶管理"添加到現有的應用中,它多是一個宇航員的社交網絡或者供火箭銷售員使用的CRM系統。網站

Why would you use Blueprint?


Blueprint殺手級的使用場景是將應用程序拆分紅不一樣的組件。
以Twitter爲例
咱們會在諸如e.g index.html and about.html的頁面使用Blueprint.
另外一個Blueprint應用於用戶登陸成功後用於顯示最新郵件
可能還有一個Blueprint用於系統管理
經過這種方式,每個不一樣的模塊都一樣能夠被獨立出來
咱們的程序由這些獨立的模塊所組成。翻譯

Where do you put them?


就像Flask的靈活性同樣。經過Blueprint,咱們有不少方法來組織咱們的程序結構。
這裏咱們討論兩種選擇: 功能 VS 業務區分code

Functional structure

  • 按照各個模塊所實現的功能進行區分。模版、視圖和靜態文件分別放在不一樣的目錄下htm

    yourapp/
        __init__.py
        static/
        templates/
            home/
            control_panel/
            admin/
        views/
            __init__.py
            home.py
            control_panel.py
            admin.py
        models.py

Divisional structure

  • 按照當前網站的相關業務進行區分。全部與管理相關的模版、視圖和靜態文件放到一個目錄全部與用戶相關的模版、視圖和靜態文件放到另外一目錄對象

    yourapp/
        __init__.py
        admin/
            __init__.py
            views.py
            static/
            templates/
        home/
            __init__.py
            views.py
            static/
            templates/
        control_panel/
            __init__.py
            views.py
            static/
            templates/
        models.py
相關文章
相關標籤/搜索