本文将告诉您Django如何在MySQL中构建了一个表格以及Django MySQL的相应知识点。我希望这对您有帮助。不要忘记收集此网站。
本文目录清单:
1.如何在MySQL数据库中构建表?2。django orm创建一个数据表3.如何使用django和mysql自动划分天上的构造表1.打开MySQL的Navicat,在数据库中找到数据表以创建数据库表
2.然后我们单击“表”上的右键单击,然后单击“新表”
3.然后,设计表的接口将出现在右侧。在这里,您可以设置字段名称,类型,长度以及是否为null,等等。
4.设计数据表后,单击“保存”按钮以保持正常。
5.我们可以单击输入表名的表名的名称中的确定。可以根据我们自己的需求设置表名称
在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()
提供一个想法。我没有尝试过,我不知道它是否可行。将表的抽象结构定义为模型,但请记住添加
元类:
摘要= true
好吧,您将获得模型的抽象类。当SynCDB时,不会构建抽象类。
然后,编写一个根据日期动态生成动态类的东西。例如,您的抽象称为myModel。
def gen_model_by_date(dt = none):
如果DT没有:
dt = dateTime.dateTime.today()
new_model_name ='mymodel_ {d}'。格式(d = dt.strftime('%y%m%d'))
new_model = type(new_model_name,(mymodel,),{}),{})
返回new_model
然后,在此表的所有逻辑中,此方法用于替换原始模型。
Django代码应由此决定。
在MySQL和Django MySQL配置中引入Django的引入已经结束。我想知道您是否从中找到了所需的信息?如果您想进一步了解此信息,请记住要收集对该网站的关注。