初识django之orm布置与增删改查

Posted rookieboy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初识django之orm布置与增删改查相关的知识,希望对你有一定的参考价值。

1.数据库驱动:给database--->data source下载对应数据库的驱动。 2.数据库工具包:py2.0支持mysqldb(),但是py3中MySQLdb()已经不能完全适用,需要置换,毕竟orm底层上还是基于关于数据库操作的py工具包,请先确保已经下载好了pymysql,在项目文件夹下的__init__.py下添加: import pymysql pymysql.install_as_MySQLdb() 3.数据库连接设置:在settings.py里配置数据库连接信息:DATABASES = { ‘default‘: { #‘ENGINE‘: ‘django.db.backends.sqlite3‘, #‘NAME‘: os.path.join(BASE_DIR, ‘db.sqlite3‘),这两行隐去了django的默认配置 ‘ENGINE‘: ‘django.db.backends.mysql‘, ‘NAME‘:‘django_orm‘, ‘USER‘:‘root‘, ‘PASSWORD‘:‘song6748106‘, ‘HOST‘:‘‘,#不填默认本机 ‘PORT‘:‘3306‘, } } 此处需要注意,NAME,PASSWORD等需要大写,否则连接不上,挺坑的。 以上配置基本完成,接下来开始动数据库了。 1.在models.py定义类,映射表结构,此处需要 from django.db import models 引入models包。(terminal输入python manage.py make migirations,即作用于这一环节makemigrations指令是用models里面的model和当前的migrations代码里面的model做对比,如果有新的修改,会新建py文件记录。 2.路由配置,打开urls.py新建路由。 3.视图配置,引入model,from app.models import * 并在视图函数下增删改查。 通过orm对数据库记录添加(默认表Author): 方式一:A1=Author(id=,name="",sex="",) #实例了models中的类(映射数据库中的一张表),field要一一对应,必须save,save是全field进行update,效率低。 A1.save() 方式二:Author.objects.create(id=2,name="曹雪芹",sex="女",) 通过orm对数据库记录删除: Author.objects.filter(name="曹雪芹").delete() 通过orm对数据库记录修改: 方式一:Author.objects.filter(name="").update(sex=" ") 方式二:A=Author.objects.get(name="吴承恩") #get取到的一定是一条记录,filter取到的是一个queryset集合(不适用0索引取值),多个修改请使用方式一。 A.sex="女" A.save()

以上是关于初识django之orm布置与增删改查的主要内容,如果未能解决你的问题,请参考以下文章

Django ORM 数据库增删改查

Python学习---django之ORM的增删改查180125

Django之ORM的增删改查

Django之ORM数据库增删改查

Web框架之Django_02基本操作(Django项目启动配置数据库连接orm增删改查)

Django学习第6篇:Django之ORM单表操作(增删改查)