回答
我發現了一個非常簡單的解決方案using Grunt and a livereload browser extension。
我發現了一個易於設置並運行良好的Python原生解決方案,Python LiveReload(doc)。
pip install livereload
livereload /path/to/monitor
您還必須安裝browser plugin。插件和LiveReload使用端口35729
進行通信(可定製),但您需要將瀏覽器指向通過runserver指定的端口。例如:
python manage.py runserver example.com:8000
在這種情況下,現場重裝上陣網址是http://example.com:8000,當您更改模板的頁面將自動刷新。
作爲最後一點,Python live加載也可以通過編程方式使用並支持wsgi應用程序。
我在我的開發環境中設置了django-live-reload,不需要瀏覽器插件。 django-live-reload應該基於python livereload包,所以也許不再需要瀏覽器插件。他們使用必須使用瀏覽器內置技術的websockets? – nmgeek
您可以使用python-livereload這樣的:
pip install livereload
livereload project/static
而爲了使這項工作添加此片段到您的base.html
:
<script type="text/javascript" src="http://127.0.0.1:35729/livereload.js"></script>
然後運行./manage.py runserver
,它應該工作。
我維護包django-livereload-server,該包添加了livereload javascript,並以簡單的django方式提供了livereload服務器。所有你需要做的是:
pip install django-livereload-server
- 添加
'livereload'
到INSTALLED_APPS
- 添加
'livereload.middleware.LiveReloadScript'
到MIDDLEWARE_CLASSES
- 與
./manage.py livereload
啓動livereload服務器/文件守望者。
我收到一個問題,它指示更新時爲0個觀察者。爲了得到這一點,我運行./manage.py livereload在一個單獨的端口上,我應該能夠將瀏覽器指向runserver路徑(默認爲127.0.0.1:8000),它應該自動更新對嗎?我試圖去livereload端口只是爲了確保,但得到了錯誤404。我如何將瀏覽器添加爲觀察者? –
- 1. Django模板生成
- 2. 使用django模板生成django模板
- 3. Django模板生成時間
- 4. 如何生成新的WordPress模板?
- 5. 如何重用Django模板?
- 6. Django模板生成亂碼空格HTML
- 7. T4MVC - 如何重新生成?
- 8. 如何重新生成user.confirmation_token
- 9. Django模板標籤,生成模板塊標籤
- 10. 如何在添加模型時自動生成新模板
- 11. 如何將異常生成到django模板變量中?
- 12. 如何使用Django從模板生成pdf?
- 13. 如何在Django模板中生成換行符
- 14. 如何在django模板中使用生成器方法?
- 15. 如何從django模板生成靜態html文件?
- 16. 如何從django模板重置緩存?
- 17. 如何重複django模板中的「塊」
- 18. 如何重建django的模板?
- 19. 如何重寫Django的CMS模板
- 20. Django模板如何去除重複值?
- 21. Django的模板如何重新使用模板HTML文件兩次
- 22. 第二次重新生成Django表單
- 23. Django模板:使模板的部分可以重新訂購?
- 24. 如何使Django在模板更改時重新啓動runserver?
- 25. Django Template繼承:如何停止重新加載基本模板?
- 26. 如何使用外鍵在django模板中重新組合
- 27. 如何在AJAX調用中重新呈現Django模板代碼
- 28. 用新名稱生成T4模板庫
- 29. 如何使用joomla生成的模板?
- 30. 如何爲類模板生成別名?
@jthill,我正在尋找建設性和實用的答案和解決方案。谷歌搜索結果沒有提供。 –
好的,讓我重述一下:迄今爲止發現的最好的東西是什麼?證明這一點,並說出你卡在哪裏。就目前而言,「建設性的和實際的答案」更好地說明了「某人研究並撰寫了一篇專門針對我的具體需求的文章,我拒絕陳述這篇文章」。 – jthill
Hi @jthill,「livereload Django模板」意味着當我更改我的Django模板時,更改應該自動傳播到瀏覽器,以便我不必自己刷新它。我問這個問題是因爲我沒有看到Google/DuckDuckGo搜索結果中的任何這樣的解決方案。我個人並沒有試圖讓它工作。你怎麼能幫忙? –