系统上线,在项目节点当中,占有举足轻重的地位。成了,获得的不只是荣誉的鲜花,成功的微笑,还有雷鸣般的掌声;败了,获得的不只是紧缩的眉头,苦涩的泪水,还有徘徊的脚步。
为了少走弯路,提高成功率,认真做好上线准备是必修的功课。话不多说,拷贝一份sales源码并对它进行调整、修改。
46.1 拷贝静态文件
先确定settings.py文件里,是否有如下内容,如果没有的话就补上。
STATIC_ROOT = os.path.join(BASE_DIR, "static")
在命令行窗口,cd到sales目录下后,执行静态文件迁移命令
python3 manage.py collectstatic
46.2 关闭Debug
在系统上线时,会关闭掉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'),
]
46.3 删除文件
删除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
46.5 安装环境
有关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
46.5.2 数据库配置
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的学习总算告一个段落了。若想能力加速度成长的话,记得多看看相关数据。