一、 配置虚拟环境
每一个Django项目都需要运行在独立的环境里,搭建虚拟环境,使得单个项目的运行环境与其他项目互不影响。因此需要为你的每一个Django创建一个虚拟环境。
2.1 创建虚拟环境 : python -m venv 项目名
进入Scripts文件夹,并激活虚拟环境:
在Windows上搭建python虚拟环境。具体参照下面的文档:
blog.csdn.net/qq_52421092… blog.csdn.net/weixin_4598…
退出虚拟环境 :
deactivate
二、安装并使用Django
2.1 安装Django
在虚拟环境中安装Django,pip是python的包管理器,使用起来很方便,只需要在cmd中创建如下命令:
下载django : MAC/Linux:
python -m pip install Django
windows:
py -m pip install Django
py -m pip install Django==1.11.1 (指定版本)
就可以完成django的安装。
2.2 创建django项目
2.2.1 使用命令行创建django项目
使用下面的命令创建一个django项目:
D:\pythonenve>django-admin startproject django1
相对应的目录下就创建了django1项目
django1的项目结构如下 :
D:\pythonenve>cd django1
D:\pythonenve\django1>python manage.py migrate
D:\pythonenve\django1>python manage.py runserver 运行开发服务器
D:\pythonenve\django1>python manage.py --help
任务启动起来之后,浏览器输入http://127.0.0.1:8000/ 如果出现:
说明搭建成功。 退出Server: Ctrl+C
使用以下命令,可以修改端口号 :
D:\pythonenve\django1>python manage.py runserver 127.0.0.1 : 9000
如果遇到以下报错,说明是python3.7和django版本不兼容的问题:
升级django的版本号即可解决 :
pip install -U Django
退出:ctrl+c
下次进入虚拟环境还要再次激活,使用activate.bat命令激活 激活之后再使用以下命令运行服务器:
D:\pythonenve\django1>python manage.py runserver 运行开发服务器
创建子项目:
D:\pythonenve\django1>python manage.py startapp books
使用ide打开django项目
打开之后,在设置 -> 解释器中配置当前虚拟环境。
配置子应用,在Django1的settings.py文件中的INSTALLED_APPS配置:
2.2.2 使用pycharm创建Django项目
点击pycharm左上方的项目 -> 新建项目
如上图所示,这种方式创建Django项目,将会自动创建虚拟环境。
新建完项目后,创建子项目: 在Windows PowerShell中创建子项目,如下图所示:
创建完成之后,在settings.py中注册APP:
二、安装MySql
2.1 下载mysql
进入MySql官网,选择下载-> MySQL Community (GPL) Downloads 如下图所示:
2.2 安装mysql
双击下载下来的msi文件,根据下面的图示选择:
全部安装好后点击Next
设置MySql数据库的密码:
后续的流程一路Next下去即可。
三、Django连接MySql
3.1 安装pymysql和mysqlclient
python -m pip install mysqlclient
python -m pip install pymysql
安装好之后,打开MySQL 8.0 Command Line Client客户端,如图:
创建数据库:
create database bookinfo default character set utf8;
如下图 :
3.2 django连接mySql
3.2.1. 配置数据库
在settings.py文件中配置DATABASES,如下图所示:
3.2.2 打开上面创建的books应用,在models.py中创建模型
from django.db import models
# Create your models here.
class book(models.Model):
title = models.CharField(max_length=100)
author = models.CharField(max_length=100)
publisher = models.CharField(max_length=100)
published = models.DateTimeField()
model.py中的一个类,对应的就是数据库中的一个表;类中的属性则是对应表中的一个字段。
3.2.3 模型的迁移
生成迁移文件,这一步不会在数据库中创建表,只会创建一个数据表和模型的对应关系:
python manage.py makemigrations
这一步完成后,会在book-> migrations中生成一个001_initial.py文件,这个文件就是迁移文件。
实际迁移:
python manage.py migrate
如下图所示 :
第二步完成后,才在数据库中生成了数据表。
进入数据库查看表是否添加成功:
use bookinfo;
show tables;
desc tableName;
可以看到,已经成功在MySql数据库中创建了book表:
四、django站点管理
首先点击按钮,运行刚刚创建的django1项目。
可以看到控制台打印出如下图所示内容:
说明运行成功。在浏览器中输入 http://127.0.0.1:8000/admin , 进入下面的页面:
此时需要输入用户名密码,使用命令 python manage.py createsuperuser 创建超级管理员,输入用户名、邮箱、密码,如下图所示:
此时打开MySQL8.0 Command Line Client,查看表auth_user,auth_user表是系统创建的用户表:
可以看到表中新增了一行数据,username是admin,email是刚刚输入的admin@gamil.com。
在浏览器中输入刚刚新增的超级管理员,登录进去,进入到站点管理。
打开books应用的admin.py,在admin.py中注册模型。
重新运行后,刷新站点管理页面,可以看到此时站点管理里面多了一个books模型。
选择增加,在表中增加数据:
添加完成后,在数据库中查询:
已经成功把两条数据插入到数据库的books_book表中了。