数据表是数据存放的场所,是Web开发中必不可少的,比如用户编辑、点赞和评论的数据都是可以存放在数据表当中,然后在通过加总聚合又返回到客户端呈现给用户看。比如我们经常看到每篇博文下的阅读数,点赞数,评论数等

先上传以下本节的代码:

类似于mysql和oracle建表,表中有多个字段,每个字段的类型是不同的。

在Django中建数据表,不同的类就对应不同的库表,类中的多个属性就是表字段(列),在定义列的时候要定义列的类型,比如字符串类型/整型/浮点型等(下表列举了Django中常见的字段类型)。models.py中常见的字段类型

1. 在models.py中建表

Python+Django中models.py文件是可以创建库表结构的,就如在oralce或sql数据库中创建表。

在models.py创建表如下:

from django.db import models

# Create your models here.

class Article(models.Model):

title=models.CharField(max_length=50) #字符串类型字段

content=models.TextField() #长字符串型字段

保存上述代码,再进入命令行,执行以下代码,就会创建数据表, 并创建响应的移植文件。使得应用程序其他位置可引用表的相关内容。

python manage.py makemigrations

python manage.py migrate

如何知晓数据库创建成功?

方法1:可以看到下图在manage.py同级目录下,生成了.sqllite文件。安装SQLlite数据库后打开该文件,就可以找到你要的库表,例如刚才建在myfrtsite应用下的article表,字段有title,content,另外,系统会默认给表加一个主键id.

方法2:刚才在执行makemigration 和migrate两行代码后,出现了新增的迁移文件。

打开文件命令:

manage.py sqlmigrate myfrstsite 0001

上面建表语句就是创建Article的响应的建表语句,完毕。

2. 如何使用表中的数据?

还记得之前说过view.py文件是用来处理响应的吗。整体来说,就是服务器接收到请求,比如某个网址及参数

接着view.py接收参数处理响应,返回请求后的结果,呈现给客户端。

没错,下一步就是更改view.py中的代码.

#from django.shortcuts import render

from django.http import HttpResponse

from . import models

# Create your views here.

def index(request):

article=models.Article.objects.get(pk=1) # 获取主键为1的文章实例

title=article.title #获取上述文章的标题

content=article.content # 获取上述文章的内容

return HttpResponse("

文章标题:%s



文章内容:%s" % (title,content))

运行前我们需要在数据库中增加一条记录。

在命令行执行以下代码:

python manage.py runserver

3. 深入了解数据表

明天继续~2020.3.1

继续更新在下一节更新