一,前期准备
①sqlyog 用来写数据库方便快捷。
②python的编译器,以pycharm为例
③去mysql官网下载mysql的安装包https://dev.mysql.com/downloads/mysql/
解压到电脑中,找到文件中bin文件夹
进入bin文件夹,复制路径
找到mysql安装路径复制下来:
(1)C:\Program Files\MySQL\MySQL Server 5.5\bin
(2)计算机-鼠标右键-属性-高级系统设置-高级-环境变量-系统变量-path-编辑-将mysql安装路径加分号;黏贴在最前面
以上步骤win10同理
二,配置mysql
①在任务管理器中确保mysql运行
②在命令行输入 mysql -u root -p 登录 mysql,输入一个密码,进入数据库成功。
③打开sqlyog,登录mysql,建立一个可用的数据库,准备完毕。
三,连接MySQL数据库设置
①默认情况下,配置使用SQLite。若不使用SQLite作为数据库,则需要额外的设置,例如 USER,PASSWORD和HOST必须加入。
内置数据库后端有:
`'django.db.backends.postgresql'
'django.db.backends.mysql'
'django.db.backends.sqlite3'
'django.db.backends.oracle'`
②在myweb/settings.py文件中,通过DATABASES项进行数据库设置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'mydemo',
'USER': 'root',
'PASSWORD': '',
'HOST': 'localhost',
'PORT': '3306',
}
}
③安装mysqlclient库
四,创建模型
编辑 myapp/models.py文件
from django.db import models
class Stu(models.Model):
'''自定义Stu表对应的Model类'''
#定义属性:默认主键自增id字段可不写
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=16)
age = models.SmallIntegerField()
sex = models.CharField(max_length=1)
classid=models.CharField(max_length=8)
def __str__(self):
return "%d:%s:%d:%s:%s"%(self.id,self.name,self.age,self.sex,self.classid)
class Meta:
db_table="stu"
五,激活模型
要将该应用程序包括在我们的项目中,我们需要在设置中添加对其配置类的引用INSTALLED_APPS。
该 myappConfig班是在myapp/apps.py文件中,所以它的虚线路径'myapp.apps.myappConfig'。
编辑myweb/settings.py文件,并将该虚线路径添加到该INSTALLED_APPS设置。
INSTALLED_APPS = [
'django.contrib.admin' ,
'django.contrib.auth' ,
'django.contrib.contenttypes' ,
'django.contrib.sessions' ,
'django.contrib.messages' ,
'django.contrib.staticfiles' ,
'myapp.apps.MyappConfig', #或者直接写 myapp
]
六,使用
在myapp应用的视图中使用
from django.shortcuts import render
from django.http import HttpResponse
from myapp.models import Stu
def index(request):
return HttpResponse("Hello Django!")
def stu(request):
#获取所有stu表信息
lists = Stu.objects.all()
print(lists)
#获取单条学生信息
print(Stu.objects.get(id=1))
return HttpResponse("ok")`
配置stu函数的访问路由
#在myapp/urls.py文件中配置
path('stu/', views.stu),
启动服务后,在浏览器中访问,在命令行终端中查看输出效果: http://localhost:8000/myapp/stu