今天,首席CTO Note将与您分享Django如何构建数据库表。其中,将详细介绍Django修改数据库表。如果您可以解决您现在面临的问题,请不要忘记注意此网站。现在让我们立即开始。
本文目录清单:
1. DJANGO ORM创建数据表2.如何创建数据库和表3. Django教程-02连接到初始化的数据库Django。将数据库管理到SQLarchemy,这也是通过ORM框架实现的。所有数据库的建立均在Model.py中实现。
首先查看如何创建一个表:
A。首先定义类,继承模型。模型,然后根据要求定义参数。这些参数的类型和变量将在以后进一步说明
模型
来自django.db导入模型
类UserInfo(models.model):
用户名= models.charfield(max_length = 32)
密码= models.charfield(max_length = 64)
b。注册应用程序
settings.py
instasted_apps = [[[
‘django.contrib.admin’,
‘django.contrib.auth’,
‘django.contrib.contenttypes',
'django.contrib.sessions',
‘django.contrib.messages',
‘django.contrib.staticfiles’,
“ app01”,
这是给予的
C。execute命令。第一个命令将生成一个初始化文件,第二个命令将生成相应的表
python manage.py makemigrations
python manage.py迁移
这样,PyCharm随附的SQLite数据库中成功生成了App01_userinfo的表。该表将以自我信息为主键,而我们的其他两个字段由我们通过类创建。
d。如果要使用MySQL,因为Django默认使用MySQLDB模块,因此在版本3.0中不存在此错误,因此它将直接报告错误。我们需要更改为PymySQL的模块。该方法如下:
将以下代码添加到同名文件夹的文件夹下的__init__文件:
导入pymysql
pymysql.install_as_mysqldb()
2.查询添加,删除,更改单个表的查询
查询
获取所有结果,获得的结果是类似QuerySet列表的对象。每个元素本身都是一个对象,包括ID,名称,密码和其他属性。
obj = model.userinfo.objects.all()
querySet [UserInfo:UserInfo对象,UserInfo:UserInfo对象,UserInfo:UserInfo对象,UserInfo:UserInfo Object,userInfo:userInfo:userInfo Object]
它可以通过过滤器过滤,这相当于SQL的语句,因为结果也是querySet,因此您需要使用第一个()来获取第一个值
obj = model.userinfo.objects.filter(id = nid).first()
增加
models.userinfo.objects.create(用户名= u,password = p,user_group_id = 3)
删除,您可以根据过滤器删除它
models.userinfo.objects.filter(id = nid).delete()
有两种常见的修改方法
第一条方法
models.userinfo.objects.filter(id = nid).update(用户名= u,password = p)
第二种方式
obj = model.userinfo.objects.filter(id = nid)
obj.username = u
obj.save()
01
新数据库
右-Click mysql,然后在“流行”菜单中选择[新数据库],如下图所示:
02
填写相关信息
[新数据库]窗口将弹出,填写[数据库名称,字符集,排序规则],然后单击[确定]按钮,如下图所示:
03
结果
数据库的左侧称为[TT],如下图所示:
04
(1)在TT数据库下方有[表],右键单击,然后选择[新表],如下图所示:
(2)表名
然后填写表单的相关列表,然后单击[保存]按钮以弹出[表名]窗口以输入[Student],如下图所示:
05
结果
如下图所示,在数据库的左侧出现了一张表:
Django教程-01安装和使用
在上面的文章中,引入了安装Django的方法。让我们谈谈在此处连接数据库。
本文主要介绍坑和解决方案
正常连接和初始化数据库的命令是
执行此命令时,出现以下错误
在调查一部分之后,当我配置数据库时,我设置了一层默认值并将其修改如下。
然后,当您继续执行迁移时,您将报告以下错误
该机器的环境是Mac计算机。在官方教程上操作时,发现使用MySQLClient安装的Python软件包将取决于MySQL或MySQL-CLIENT的安装,但是当我安装MySQL和MySQL-CLIENT时,我发现了解决方案。后来发现在settings.py文件中,添加了以下代码,即可以连接pymsql。
或者可以在settings.py中添加代码__init__.py
然后执行python manage.py迁移命令,以发现该表是成功创建的。新表不影响原始库的其他表。
结论:以上是首席CTO的所有内容都注明了Django如何为每个人构建数据库表。感谢您阅读本网站的内容。我希望这对您有帮助。不要忘记找到表格的相关内容。