簡體   English   中英

將Python添加到Twitter Bootstrap

[英]Adding Python to Twitter Bootstrap

這可能是一個noob問題,但我想知道將Python添加到Twitter Bootstrap(我只是在學習)

任何人都可以給我一些我應該擁有的文件夾結構的想法嗎? 我假設我的Python文件夾與我的Bootstrap項目文件夾處於同一級別?

例如

MyProject/
|-- Python/
|   |-- bin
|   |   |-- app.py
|   |-- docs
|   |-- sessions
|   |-- tests
|   |   |-- project_tests.py
|   
|-- bootstrap/
|   |-- css
|   |   |-- bootstrap.css
|   |   |-- bootstrap.min.css
|   |   
|   |-- js
|   |   |-- bootstrap.js
|   |   |-- bootstrap.min.js
|   |-- img
|   |   |-- glyphicon-halflings.png.
|   |   |-- glyphicon-halflings.png.

我直接從下載站點獲得了bootstrap文件結構,我在這里看到關於設置Python目錄的最佳方法的這個問題

一如既往,先謝謝。

無論是否使用框架,無論是否使用框架,最好有一個地方來保存靜態文件(這將是您的所有Twitter引導程序內容)。

我個人保持我的分裂為imgcssjsfonts以保持清晰。 像這樣:

MyProject/
|-- Python/
|   |-- bin
|   |   |-- app.py
|   |-- docs
|   |-- sessions
|   |-- tests
|   |   |-- project_tests.py
|   
|-- static/
|   |-- css/
|   |   |-- bootstrap.css
|   |   |-- bootstrap.min.css
|   |   |-- my_custom_styles.css
|   |-- js/
|   |   |-- bootstrap.js
|   |   |-- bootstrap.min.js
|   |-- img/
|   |   |-- glyphicon-halflings.png
|   |   |-- glyphicon-halflings.png
|   |-- fonts/
|   |   |-- cool_font

這樣做的好處是,當您使用Web服務器來提供靜態內容時,您可以在模板中使用/static/並將其指向文件系統上的/static/文件夾。 Nginx的示例:

location ~ ^/static/  {
      alias    /path/to/static/;
      expires 30d;
    }

所以www.yoururl.com/static/img/glyphicon-halflings.png很容易從你的文件系統中找到並提供服務。

作為一個額外的好處,如果您使用Python開發Web,那么有一些很棒的框架可以幫助您完成許多基礎知識。 他們還有關於在開發和生產部署中處理靜態文件的大量文檔。

我用過:

但也有:

還有更多

Edit1 - 額外獎勵信息:

我說我會多補充一點。 以下是我管理靜態文件的方法:

當我使用Django時,我使用django-compressor ,它會自動組合並最小化模板中的內聯CSS和JS。 它還添加了一個唯一的標識哈希,因此您可以在未來幾年內設置緩存標頭,以節省帶寬並減少加載時間。 如果您更改靜態文件,它會自動修改哈希 - 它們會被瀏覽器重新下載。

如果我正在使用Flask(或者不是-django),我會使用Grunt。 雖然不是真正意義上的python開發,但它很容易掛鈎到一個持續集成系統(如Jenkins),並且還將為您組合,連接和壓縮您的CSS和JS。 雖然還沒有解決這個獨特的哈希問題。

這些新的壓縮文件,我放入一個新目錄 - static-min 然后我有一個bash腳本,它遍歷我的static-min目錄中的所有文件並對它們進行gzip(使用10 - 最大gzip壓縮),但保持其名稱相同。 這樣,如果受支持的瀏覽器請求您的站點 - Nginx將提供壓縮的靜態文件。

像這樣:

|-- static-min/
|   |-- css/
|   |   |-- all_css_concatenated_minimised-723974hgjsf.css
|   |   |-- all_css_concatenated_minimised-723974hgjsf.css.gz
|   |-- js/
|   |   |-- all_js_concatenated_minimised-djad7rhea8f.js
|   |   |-- all_js_concatenated_minimised-djad7rhea8f.js.gz

Nginx配置 - expires max將使用戶永久保存文件在其瀏覽器緩存中:

location ~ ^/static-min/  {
      alias    /path/to/static-min/;
      expires  max;
    }

Bootstrap是一個僅限客戶端的庫,因此為了保持一致性,您可能應該將它放在static/lib/bootstrap類的東西中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM