讲解对象:django项目开发实战详解
作者:融水公子rsgz
1 启动数据库
net start mysql

2 登录数据库
mysql -u root -p

3 创建数据库
create database rsgz2;

扩展:想删除数据库 drop database rsgz2;
4 进入目标地址
D:\1 File\9 pycharm

5 进入powershell
shift+右键

6 创建项目
django-admin startproject pro2

可以看到当前目录多了一个项目文件

7 创建应用
cd pro2 先进入项目目录
python manage.py startapp myapp 创建myapp应用

8 选中pro2项目用pycharm打开

9 配置文件
说明:
0.1 项目文件的配置文件 叫做setting.py
0.2 setting.py需要 激活应用, 配置数据库
10 激活应用
Ctrl+F 搜索APP
我们锁定目标:INSTALLED_APPS = [

0.2 添加app进去就行了

0.3 消除波浪号
分析:这里出现波浪号是因为有语法和拼写检测,我们将其标准降低就行
操作:将下面的小人点击一下,拖动进度条至中间即可

11 配置数据库
Ctrl+F搜索关键字 DATABASE
0.1 我们锁定目标

0.2 配置内容
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'rsgz2',
'USER': 'root',
'PASSWORD': '123456',
'HOST': 'localhost',
'PORT': '3306',
}
}

参数解释:
0.1 数据库的配置都是以键值对的形式配置
0.2 engine表示数据库引擎配置,我设置的是mysql
0.3 name表示数据库名 刚刚我新建的数据库rsgz2
0.4 user默认的是root
0.5 password是数据库的登录密码
0.6 host是主机IP
0.7 port是数据库端口号
12 数据库引擎初始化设置
位置:项目文件下的__init__.py
操作:添加一些代码
# 导入pymysql并安装
import pymysql
pymysql.install_as_MySQLdb()

13 添加模型model
位置:打开应用的models.py

操作:添加模型
内容:
from django.db import models
# Create your models here.
class Grades(models.Model):
gname =
models.CharField(max_length=20)
gdate =
models.DateTimeField()
ggirlnum
=models.IntegerField()
gboynum =
models.IntegerField()
isDelete = models.BooleanField(default=False)
def __str__(self):
# return "%s-%d-%d"%(self.gname,self.ggirlnum,self.gboynum)
return self.gname
class Students(models.Model):
sname =
models.CharField(max_length=20)
sgender =
models.BooleanField(default=True)
sage =
models.IntegerField()
scontend =
models.CharField(max_length=20)
isDelete =
models.BooleanField(default=False)
sgrade =
models.ForeignKey("Grades",on_delete=models.CASCADE)
def __str__(self):
# return "%s-%d-%d"%(self.gname,self.ggirlnum,self.gboynum)
return self.sname

14 迁移文件
0.1 生成迁移文件
命令:python
manage.py makemigrations
注意:需要在项目目录下打开执行命令,如果执行这个命令出错可以看看我的下一篇教程。里面有一些常见的错误的解决办法

这个时候多了0001文件

0.2 执行迁移文件
命令:python
manage.py migrate

0.3 看看数据表
show databases;

use rsgz2;

show tables;

上面可以看出数据库里面的表也已经生成了
15 启动django服务器
命令:python
manage.py runserver

16 浏览器访问
127.0.0.1:8000

17 创建模板目录
要求:
0.1 和项目 应用目录同级的templates目录
0.2 有一个子目录,包含myapp

0.3 配置模板路径
位置:在项目setting.py文件中配置
操作:快捷键搜索ctrl+f 关键字template
锁定目标:

添加:
TEMPLATES = [
{
'BACKEND': 'django.templates.backends.django.DjangoTemplates',
# 配置模板路径
'DIRS': [os.path.join(BASE_DIR,'templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.templates.context_processors.debug',
'django.templates.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]

18 写视图
位置:myapp应用下面views.py文件写一个视图
操作:添加下面代码
from django.shortcuts import render
# Create your views here.
from django.http import HttpResponse
def index(request):
return
HttpResponse("融水公子是一个超级大帅哥!")

19 添加路由
问题:模板和视图都写完了,但是没有关联
解决:我们写一个路由关联他们
操作:添加项目路由关联应用路由,添加 应用路由关联视图views和模板templates
0.1
位置:在项目pro2下
操作:urls.py文件添加一个总路由
内容:
from django.conf.urls import url,include
from django.contrib import admin
urlpatterns = [
url(r'^admin/',
admin.site.urls),
url(r'^',include('myapp.urls')),
] 
0.2 位置:在应用myapp下
操作:新建一个urls.py文件,并且添加子路由
作用:用来连接视图views和模板templates

添加内容:
from django.conf.urls import url
from . import views #引入当前目下
urlpatterns = [
url(r'^$',views.index)
]
20 浏览器访问
127.0.0.1

21 新建主页
位置:templates里面
操作:新建一个index.html

添加内容:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>rsgz</title>
</head>
<body>
<h1>融水公子修为高深莫测!是一位斗破大陆的巅峰主宰!</h1>
</body>
</html>

22 主页视图
位置:应用下的views.py
操作:添加代码
from django.shortcuts import render
# Create your views here.
from django.http import HttpResponse
def index(request):
# return
HttpResponse("融水公子是一个超级大帅哥!")
# 我们通常不用上面的,而是直接使用模板
return
render(request, 'myapp/index.html') #访问主页
23 访问主页
http://127.0.0.1:8000/
