首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【班级管理】创建Grade模型并配置后台

【班级管理】创建Grade模型并配置后台

本节课我们将开始创建应用。在之前的课程中,我们已经分析了我们的应用主要包括五个部分:班级、学生、老师、成绩和用户。

创建应用

首先,我们需要关闭当前服务,按下Ctrl+C即可。接下来,通过命令python manage.py startapp来创建应用。如果你忘记命令,可以使用--help查看所有可用命令,其中startapp就是创建应用的命令。

我们依次创建vscode终端创建五个应用,分别命名为grades、teachers、students、scores和accounts。代码如下:

python manage.py startapp grades

python manage.py startapp students

python manage.py startapp teachers

python manage.py startapp scores

python manage.py startapp accounts

创建成功后,在目录结构中会新增对应的文件夹,每个文件夹下都有相应的文件。如下图所示:

编写模型

我们先编写班级应用的模型,也就是将我们的数据表Grade的表字段用ORM的形式来进行编写。

grade_name (班级名称): 字符串字段,最大长度为120个字符,必须是唯一的,用来存储班级的名称。

grade_number (班级编号): 字符串字段,最大长度为10个字符,必须是唯一的,用来存储班级的编号。

在grades应用(文件下)的models.py文件中,定义一个名为Grade的模型类,并继承自models.Model。这个模型包含两个字段:grade_name(班级名称)和grade_number(班级编号),它们都是字符串类型,且具有唯一性。代码如下:

# grades/models.py

from django.db import models

class Grade(models.Model):

# 班级名称,长度最大为50,必须唯一,显示名称为“班级名称”

grade_name = models.CharField(max_length=50, unique=True, verbose_name="班级名称")

# 班级编号,长度最大为10,必须唯一,显示名称为“班级编号”

grade_number = models.CharField(max_length=10, unique=True, verbose_name="班级编号")

# 定义对象的字符串表示,返回班级名称

def __str__(self) -> str:

return self.grade_name

class Meta:

# 指定数据库表名为“grade”

db_table = "grade"

# 在Django后台显示名称为“班级”

verbose_name = "班级"

# 在Django后台复数显示名称为“班级名称”

verbose_name_plural = "班级名称"

数据库迁移

编写完模型后,需要执行数据库迁移操作。在vscode终端中执行以下命令:

python manage.py makemigrations

python manage.py migrate

这里提示一个警告:

WARNINGS:

?: (staticfiles.004) The directory 'static' in the STATICFILES_DIRS setting does not exist.

No changes detected

这里没有static这个文件夹,所以我们新建一个static文件夹,注意新建的时候,它是在项目的同级目录下,如下图所示:

接下来我们在config文件夹中的settings.py文件中的INSTALLED_APPS中添加了所有创建的应用,如grades、teachers、students、scores和accounts。

接下来我们继续在在vscode终端中执行以下命令:

python manage.py makemigrations

python manage.py migrate

这次才真正的应用到了我们数据库中,回到Navicat数据库管理软件中,进行刷新,mysql数据库就新增了一个grade表。如下图所示:

这个grade表它会有三个字段,ID是默认的主键,我们自己定义的两个字段,一个grade name,一个grade number。如下图所示:

注册模型到后台

完成上述步骤后,在vscode终端中重新启动Django服务:

python manage.py runserver

服务正常启动,我们在浏览器地址栏中输入127.0.0.1:8000/admin来访问后台。在后台可以看到grades应用,并可以进行班级的添加、删除、编辑和查询。如下图所示:

这样我们就了解了如何创建Django应用、编写模型、进行数据库迁移以及在后台管理应用。希望大家通过实践掌握这些基础操作

  • 发表于:
  • 原文链接https://page.om.qq.com/page/O2cVNIE4ugio-1N221Y35Ryg0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券