使用場景:
1. 自己公司內部用,沒准備linux時候。
2. 不用nginx,不用uwsgi,不用node部署vue
實現思路:
vue代碼打包后,生成html、css、js文件, css、js等把他搞到django的static目錄下,index.html搞到template目錄下,之后訪問任意路由先做api和static匹配,最后沒有選擇了直接返回index.html即可,當發生錯誤路由時候,有index.html的返回404頁面(vue的路由攔截)。
關於vue和django開發配置(vue代理及請求攜帶cookie):
https://www.cnblogs.com/zezhou/p/13997819.html
1. 設置vue打包后,靜態資源生成到static目錄中
注意:由於vue打包默認是不加層級的,而django會加static層級所以為了兼容,打開index.html能訪問到靜態資源,才這樣配置的

效果:



2. 把dist,static下的靜態文件搞到django的static目錄下

3. django路由配置
注意:1. 是re_path,空就表示匹配全部路由 2. 由於是匹配全部路由,那么需要放在最下面,因為django是順序匹配


以上配置完畢就可以正常訪問了

4. vue錯誤路由攔截返回404
注:由於django已經設置了匹配一切返回首頁,所以錯誤路由只能由vue來完成了

windows后台運行django程序
寫個bat文件:
@echo off if "%1" == "h" goto begin mshta vbscript:createobject("wscript.shell").run("%~nx0 h",0)(window.close)&&exit :begin python F:\python_project\contract_manager\manage.py runserver 0.0.0.0:9000
// 修改最后一行內容即可
把bat文件放到windows開機啟動的目錄中:
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
