Django简单的数据库操作

Posted 陈鸿超

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django简单的数据库操作相关的知识,希望对你有一定的参考价值。

当然,本篇的前提是你已经配置好了相关的环境,这里就不详细介绍。

 

一. 在settings.py文件中设置数据库属性。

如下:

DATABASES = {
    default: {
        ENGINE: django.db.backends.mysql,        #MySQL数据库
        NAME: test1,                             #库名
        USER: root,                              #用户名
        PASSWORD: a8115080,                      #密码
        HOST:localhost,
        PORT:3306,
    }
}

 

二. 创建数据库模型App

python manage.py startapp dbModel

目录结构如下(不同的版本也许会有不同):


|-- dbModel
    |-- __init__.py
    |-- admin.py
    |-- models.py
    |-- tests.py
    |-- app.py
    |-- views.py

 

三. 在数据库中创建表

1. 在dbModel/models.py中声明表结构


如下:

from django.db import models
class Test(models.Model):
    name = models.CharField(max_length=20)            #字段,默认会多个id字段
    age = models.IntegerField()


其中,一个class就对应着一张表,表名为:dbModel_Test ,即AppName_ClassName.

在这里你可以一次声明多个表。


2. 然后使用命令行就可以在本地数据库中创建相应表:

python manage.py syncdb        #老版本

python manage.py makemigrations        #新版本
python manage.py migrate

四. 在函数中对数据库表进行基本操作

说明:

1. 在函数里操作数据库,经常会遇到编码错误问题,所以一般要在文件的首行加上

# -*- coding:UTF-8 -*-

2. 操作数据库返回的结果一般都是个对象,而那些字段值则是这个对象的属性,使用 . 即可调用。

 

简单操作:

1. 添加新元素

test1 = Test(name=小明,age=18)
test1.save()

2. 查询

Test.objects.all()        #查询表中所有元组
Test.objects.get(id=1)    #获取单个对象

3.按条件筛选

Test.objects.filter(name=小明)

4.更新

Test.objects.filer(id=1).updata(name = 大明)
或者:
p = Test.objects.get(id=1)
p.name = 大明
p.save()

5.删除

p = Test.objects.get(name=小明)
p.delete()
或
Test.objects.filter(name=小明).delete()

 

以上是关于Django简单的数据库操作的主要内容,如果未能解决你的问题,请参考以下文章

django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE的解决办法(转)(代码片段

django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE的解决办法(转)(代码片段

jQuery的DOM操作

Django REST framework 基本组件

Django简单的数据库操作

Django REST框架--认证和权限