测试平台开发(一)Django项目创建和基本配置
一、安装Django最新版本
1 pip install django
二、创建Django项目
首先进入要存放项目的目录,再执行创建项目的命令
1 django-admin startproject testplatform
三、Django项目目录详解
1 testplatform 2 ├── testplatform # 项目的容器 3 │ ├── __init__.py # 一个空文件,告诉 Python 该目录是一个 Python 包。 4 │ ├── asgi.py # 一个 ASGI 兼容的 Web 服务器的入口,以便运行你的项目。 5 │ ├── settings.py # 该 Django 项目的设置/配置。 6 │ ├── urls.py # 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"。 7 │ └── wsgi.py # 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。 8 └── manage.py # 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
四、运行项目
使用Pycharm打开项目,虚拟环境自行配置(参考:Python在Windows创建虚拟环境)
Django官网写的是在项目根目录使用命令行执行 python manage.py runserver 0.0.0.0:8000 来启动项目,但使用工具会更方便
进入浏览器输入http://127.0.0.1:8000,出现下面这个页面就说明项目运行成功。
五、开发前settings.py文件的一些配置
1.修改 ALLOWED_HOSTS 这个列表,这个列表中存放的是可以访问该项目的IP地址或域名,在本地开发的时候指定为*就可以,代表所有IP或域名都可以访问
1 ALLOWED_HOSTS = ["*"]
2.注释 MIDDLEWARE 列表中的 django.middleware.csrf.CsrfViewMiddleware 这一行,这是django自带的安全认证机制,但是不安全所以不用它
1 MIDDLEWARE = [ 2 'django.middleware.security.SecurityMiddleware', 3 'django.contrib.sessions.middleware.SessionMiddleware', 4 'django.middleware.common.CommonMiddleware', 5 # 'django.middleware.csrf.CsrfViewMiddleware', # 就是这一行,注释掉!!! 6 'django.contrib.auth.middleware.AuthenticationMiddleware', 7 'django.contrib.messages.middleware.MessageMiddleware', 8 'django.middleware.clickjacking.XFrameOptionsMiddleware', 9 ]
3.开启跨域
3.1 安装pip install django-cors-headers
pip install django-cors-headers
3.2 加入INSTALLED_APPS列表中
INSTALLED_APPS = [ ……, 'corsheaders', ]
3.3 在MIDDLEWARE列表'django.contrib.sessions.middleware.SessionMiddleware'和'django.middleware.common.CommonMiddleware'的中间加入'corsheaders.middleware.CorsMiddleware'
MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'corsheaders.middleware.CorsMiddleware', # 加在这里! 'django.middleware.common.CommonMiddleware', # 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', ]
3.4 在settings.py文件中添加白名单,可以指定所有域名ip都可以访问,也可以指定域名和ip列表。两者不能同时存在
# 添加白名单 # CORS_ORIGIN_ALLOW_ALL = True:指定所有域名ip都可以访问后端接口 CORS_ORIGIN_ALLOW_ALL = True # 指定能访问后端接口的ip或域名列表 # CORS_ORIGIN_WHITELIST = ['127.0.0.1',……]
3.5 开启允许跨域,在settings.py文件中加入
# 允许跨域时携带Cookie,默认为False CORS_ALLOW_CREDENTIALS = True
4.将语言改为中文,LANGUAGE_CODE 的值改为zh-Hans
1 LANGUAGE_CODE = 'zh-Hans'
5.连接MySQL
5.1 安装连接MySQL的依赖包 mysqlclient
pip install mysqlclient
5.2修改 DATABASES 字典中的数据库连接信息,项目被创建后跟目录下会默认有一个sqlite3数据库,这个字典也默认连接的是这个数据库,使用MySQL创建一个新数据库,这里将其改为自己刚创建的数据库信息
1 DATABASES = { 2 'default': { 3 'ENGINE': 'django.db.backends.mysql', # 指定MySQL引擎 4 'NAME': 'mydata', # 数据库名称 5 'USER': 'root', # 用户名 6 'PASSWORD': 'root', # 密码 7 'HOST': '127.0.0.1', # 数据库服务器IP 8 'PORT': '3306', # 端口 9 } 10 }
6.数据库迁移,就是将定义好的数据模型在数据库创建对应的数据表,在命令行中依次执行以下命令
1 python manage.py makemigrations # 将我们自己创建的应用目录中model.py里面的模型类生成迁移文件,这里我们并没有创建文件,只是提前解释一下 2 python manage.py migrate # 根据数据库迁移我呢见生成对应的SQL语句并执行
或者使用Pycharm自带的功能操作(建议用!)
7.检查数据库,在没有创建应用数据模型之前,这些被创建的数据表都是Django自身要用到的
8.重启项目即可
GitHub持续更新:地址https://github.com/debugf/testplatform
转载请注明出处,商用请征得作者本人同意,谢谢!!!