Django学习记录3-连接数据库
1.在项目目录下settings.py配置连接的数据库信息
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'student', # 你要存储数据的库名,事先要创建。 'USER': 'root', # 数据库用户名 'PASSWORD': 'root', # 密码 'HOST': 'localhost', # 默认主机 'PORT': '3306', # 数据库使用的端口 } }
2.在应用目录下models.py 创建一个表信息操作的Model表
from django.db import models # Create your models here. class Stu(models.Model): 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"
3.激活模型
在项目目录下settings.py添加应用程序
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', "my_app" #添加应用 ]
4.调用
(1).进入交互式的Python shell
C:\Users\78461\Desktop\mysite>python manage.py shell Python 3.9.4 (tags/v3.9.4:1f2e308, Apr 6 2021, 13:40:21) [MSC v.1928 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. (InteractiveConsole) >>> from my_app.models import Stu >>> mod = Stu.objects >>> lists = mod.all() >>> for u in lists: ... print(u) ... 1:张三:18:male:python1 2:李四:17:male:python2 3:王五:18:female:python1 4:陆六:19:female:python2 >>> mod.get(id = 1) <Stu: 1:张三:18:male:python1>
(2).在my_app应用的视图中
在应用目录下,views.py文件
from django.shortcuts import render from django.views.decorators.csrf import csrf_exempt # Create your views here. from django.http import HttpResponse from my_app.models import Stu def index(request): lists = Stu.objects.all() print(lists) print(Stu.objects.get(id = 1)) return HttpResponse("ok")
在应用目录下,添加路由地址
from django.urls import path from . import views urlpatterns = [ path("",views.index, name="Student") ]
在项目目录下,添加路由地址
from django.contrib import admin from django.urls import path from django.conf.urls import include, url from my_app import views urlpatterns = [ #path('admin/', admin.site.urls), url("stu/", include("my_app.urls")) ]
在项目目录路径下运行cmd
python manage.py runserver