1、创建django项目
a)
安装django依赖包:pip3 install Django
# 使用 django-admin 来创建 HelloWorld 项目
django-admin startproject src
cd src/
执行同步数据库文件:python3 manage.py migrate
# 启动django
python3 manage.py runserver 0.0.0.0:8000
本地测试:
在浏览器中输入127.0.0.1:8000
后面将代码放到了服务器上进行测试
b) django中连接mysql数据库
DATABASES = {
# 'default': {
# 'ENGINE': 'django.db.backends.sqlite3',
# 'NAME': BASE_DIR / 'db.sqlite3',
# }
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'jlpost',
'USER': 'root',
'HOST': '10.30.239.206',
'PASSWORD': '123456',
'PORT': '3306',
}
}
c) 安装mysql
安装mysql:参见https://www.runoob.com/mysql/mysql-install.html
安装pymsql==1.0.2作为数据库驱动,在_init_.py文件中配置,此处需要指定pymysql的版本,否则可能报错
import pymysql
pymysql.version_info = (1, 4, 13, "final", 0)
pymysql.install_as_MySQLdb()
在测试代码的时候此处遇到一个问题Forbidden (CSRF cookie not set.),参见:https://blog.csdn.net/qq_43245972/article/details/87883108
d) 运行时数据库会报错
django.core.exceptions.ImproperlyConfigured: SQLite 3.8.3 or later is required (found 3.7.17).
解决方法如下:https://blog.csdn.net/weixin_43336281/article/details/100055435
https://my.oschina.net/u/4337873/blog/4279371
得到django项目目录如下:
2、本地部署
采用uwsgi+nginx部署项目。服务器:CentOS 7.9
2.1 uwsgi启动django
- 安装uwsgi
pip3 install uwsgi
报错如下:
查阅资料发现是python3_devel(centos系统下)未安装,补充该安装包,成功
yum install python3-devel
- 收集静态资源
配置django目录下的settings.py
# 静态资源访问的起始url
STATIC_URL = '/static/'
# 指定静态资源所在的目录
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'hello_dist', 'dist', 'static'),
]
# 设置收集静态资源的路径(部署时使用)
STATIC_ROOT = os.path.join(BASE_DIR, 'hello_dist', 'dist')
收集静态资源
python3 manage.py collectstatic
<