系統上線,在項目節點當中,占有舉足輕重的地位。成了,獲得的不隻是榮譽的鮮花,成功的微笑,還有雷鳴般的掌聲;敗了,獲得的不隻是緊縮的眉頭,苦澀的淚水,還有徘徊的腳步。
為了少走彎路,提高成功率,認真做好上線準備是必修的功課。話不多說,拷貝一份sales源碼并對它進行調整、修改。
46.1 拷貝靜态文件先确定settings.py文件裡,是否有如下内容,如果沒有的話就補上。
STATIC_ROOT = os.path.join(BASE_DIR, "static")
在命令行窗口,cd到sales目錄下後,執行靜态文件遷移命令
python3 manage.py collectstatic
在系統上線時,會關閉掉Debug(設為False)的功能,而由此将失去django自動對靜态文件進行路由的功能,導緻靜态文件出現加載失敗的情況。
如果想要讓靜态文件正常顯示,就需要配置靜态文件服務了。
修改settings.py文件,調整STATIC_ROOT值得為'static'。
DEBUG = False
ALLOWED_HOSTS = ['*']
STATIC_URL = '/static/'
# 配置靜态文件路徑
# STATIC_ROOT = os.path.join(BASE_DIR, "static")
STATIC_ROOT = 'static'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, '/static/'), ##修改地方
]
調整sales/urls.py文件内容,新增靜态文件的導航路徑。
from django.contrib import admin
from django.urls import path, include
from django.views import static
from django.conf import settings
from django.conf.urls import url
admin.site.site_title = '銷售管理系統'
admin.site.site_header = '銷售管理系統'
urlpatterns = [
path('', admin.site.urls),
path('captcha/', include('captcha.urls')),
path('special/', include('special.urls')),
url(r'^static/(?P<path>.*)$', static.serve, {'document_root':
settings.STATIC_ROOT}, name='static'),
]
删除sales項目下的緩存文件__pycache__;删除venv文件夾(如果有的話)。
46.4 導出第3方庫使用pip3命令導出項目依賴的第3方開發庫。
pip3 freeze > 磁盤路徑/sales/requirements.txt
requirements.txt文件内容秀一下。
Django==2.2.2
django-ranged-response==0.2.0
django-simple-captcha==0.5.11
Pillow==6.1.0
pytz==2019.1
six==1.12.0
sqlparse==0.3.0
有關Python3運行環境的安裝,在第1章之中有詳細的介紹,不清楚的,可以回去看看。版本号用的是:Python3.7.2。
注意:在Windows系統下,Python命令用的是python,而Ubuntu下則是python3。
46.5.1 安裝第3方庫拷貝sales項目放置到D盤目錄下。以管理員身份打開cmd窗口,用D:切換到D盤目錄,用cd sales進到項目根目錄,然後運行pip3命令。
pip3 install -r requirements.txt
在使用中間件(如Apache)之前,建議先用命令運行項目并測試是否有問題存在。
python3 manage.py runserver
Django框架默認支持對Sqlite的操作,如果要更換成其他數據庫(如:MySql、Sql Server等),除了更改settings.py的配置信息之外,還需要安裝對應的驅動。
修改為Sql Server數據庫的配置信息如下。
DATABASES = {
'default': {
'ENGINE': 'sql_server.pyodbc',
'NAME': 'db',
'USER': 'user',
'PASSWORD': 'password',
'HOST': '127.0.0.1',
'PORT': '1433',
'OPTIONS': {
'driver':'SQL Server Native Client 11.0',
'MARS_Connection': True,
},
},
}
通過pip3安裝驅動。
pip3 install django-pyodbc-azure pyodbc
系統上線,除了本章節說的項目(sales)的内容之外,對服務器版本的操作系統、數據庫、中間件的選型也是非常重要的。
服務器版本的操作系統主要有Windows Server系列和Linux系列,如Windows Server 2012 R2、Ubuntu Server18.04;數據庫有MySql、Sql Server、PostgreSQL等;中間件有IIS、Apache、Nginx等。
具體選擇哪一套裝(操作系統 數據庫 中間件),要看你所在企業的實際情況。如果隻是個人學習的話,怎麼簡單就怎麼來。
完成在服務器上的系統部署工作之後,對Django的學算告一個段落了。若想能力加速度成長的話,記得多看看相關數據。