Django模型实现数据库条目新增功能(django模型新增数据库)

随着互联网的不断发展,各种基于Web的应用也越来越成熟,其中最为重要的一个部分就是数据库。数据库,作为互联网应用的数据管理中极为重要的组成部分,其强大的存储能力能够有效地帮助开发者进行数据的存储,管理和获取。在创建Web应用程序时,处理数据条目的过程是必不可少的,因此,在开发过程中,实现数据库的条目新增功能是非常重要的一步。

成都创新互联-企业级云服务器提供商,为用户提供云服务器、CDN、云安全服务、重庆服务器托管、服务器租用、高防服务器租用等全方位云服务与各行业解决方案,帮助企业及个人极速备案,轻松上云,安全无忧。

在Django这一Web框架中,实现新增功能的方法可以使用Django模型。Django模型是一种用于定义数据库架构的Python类,可以将应用程序所需的数据建立成一个类的形式,这样就可以在数据库中创建与之对应的数据表,以此实现对数据库的操作。

由此,本篇文章将详细讲解如何使用,并提供示例代码和操作步骤。

一、创建Django项目

需要创建一个Django项目,可以在终端使用如下指令进行创建:

“`

$ django-admin startproject projectname

“`

其中,projectname为你所要创建的项目的名称。

接着,切换到项目目录下,使用如下命令启动服务:

“`

$ python manage.py runserver

“`

在浏览器中打开http://127.0.0.1:8000/,如果出现“Welcome to Django”内容,则表示你的Django项目已经创建成功。

二、创建Django应用程序

在创建Django项目之后,需要在项目中创建一个或多个应用程序来实现相应的功能。可以在项目目录下使用如下指令创建一个应用程序:

“`

$ python manage.py startapp appname

“`

其中,appname为你所要创建的应用程序名称。

三、创建Django模型

在创建完应用程序后,需要在该应用程序的models.py文件中定义模型。模型定义了数据表的结构和约束条件,同时也会创建与之对应的数据表。

例如,我们要创建一个名为“Book”的模型类,用于实现对数据库中“Book”数据表的管理,那么在应用程序的models.py文件中,可以如下定义模型类:

“`

from django.db import models

class Book(models.Model):

title = models.CharField(max_length=100)

author = models.CharField(max_length=100)

pub_date = models.DateTimeField()

def __str__(self):

return self.title

“`

上述模型类创建了一个“Book”的数据表,包括三个字段:书名、作者和出版日期。其中,各字段的类型及参数含义如下:

– CharField:字符串类型,需要设置更大长度;

– DateTimeField:时间类型。

四、迁移数据库

在Django中创建模型后,需要执行数据库迁移操作,以创建相应的数据表。在终端中执行如下指令即可实现迁移:

“`

$ python manage.py makemigrations appname

$ python manage.py migrate

“`

其中,appname为你所创建的应用程序名称。

执行完上述指令后,就成功在数据库中创建了一个新的数据表。在这个例子中,就创建了一个名为”Book”的数据表。

五、新增条目记录

在数据库中增加新的记录需要从该模型类创建一个新的实例,并在实例中设置相应的属性。以“Book”模型类为例,可以在Python shell中通过如下指令完成新增条目记录的功能:

“`

$ python manage.py shell

>>> from myapp.models import Book

>>> from django.utils import timezone

>>> b = Book(title=’Django入门实战’, author=’李明’, pub_date=timezone.now())

>>> b.save()

“`

在上述代码中,我们首先导入了模型类,并使用timezone模块获取当前时间,然后创建了一个Book对象并设置其各个属性,最后通过save()方法将该对象保存至数据库中。

在Django框架中,还可以使用以下代码实现数据条目的新增:

“`

from myapp.models import Book

from django.utils import timezone

Book.objects.create(title=’Django入门实战’, author=’李明’, pub_date=timezone.now())

“`

通过上述代码,我们就可以 successfully 将一条新的记录插入到该数据表中。

六、

至此,我们就学习了如何使用,并且已经成功将一条新的记录插入到数据表中。

尽管Django集成了强大的ORM功能,但是在实际应用中,还需要结合自己的实际情况进行开发。这也需要我们不断的学习和实践,提高我们的技能和能力。

相关问题拓展阅读:

  • django orm创建数据表

django orm创建数据表

Django里面,管理数据库和sqlarchemy类似,也是通过orm框架来实现的。所有的数据库的建立,都是在model.py里面通过类来实现的。

首先看看如何创建一个单表:

a. 先定义一个类,继承models.Model, 然后根据需求定义参数,这些参数的类型和变量后面会进一步阐念世述

models.py

from django.db import models

class UserInfo(models.Model):

username = models.CharField(max_length=32)

password = models.CharField(max_length=64)

b. 注册app

settings.py

INSTALLED_APPS = 

‘django.contrib.admin‘,

‘django.contrib.auth‘,

‘django.contrib.contenttypes‘,

‘django.contrib.sessions‘,

‘django.contrib.messages‘,

‘django.contrib.staticfiles‘,

‘app01‘,

>

c.执行命令。 之一条命令会生成一个初始化文件,第二个命令会生成对应的表

python manage.py  makemigrations

python manage.py  migrate

这样,就在PyCharm自带的sqlite数据库里面成功的生成了一个app01_UserInfo的表。这个表默认会有一个自增的id作为主键,另外两个字段是我们通过类创建的。

d. 如果希望使用mysql,因为Django默认使用了MySqldb模块,这个在3.0版本里面不存在,会直接报错。我们需要此指改为pymysql的模块,方法如下:

在project同名文件夹下的__init__文件中添加如下代码即可:

import pymysql

pymysql.install_as_MySQLdb()

2. 对于单表的增删改查询

查询

获取所有结果,获取到的结果是一个QuerySet的类似列表的对象仔扒肢,每一个元素本身又是一个对象,包括了id,name,password等属性。

obj = models.UserInfo.objects.all()

, , , , >>

可以通过filter进行过滤,相当于sql的where语句,因为结果也是QuerySet,因此需要再使用first()获取之一个值

obj = models.UserInfo.objects.filter(id=nid).first()

增加

models.UserInfo.objects.create(username=u,password=p,user_group_id=3)

删除,可以在filter的基础上进行删除

models.UserInfo.objects.filter(id=nid).delete()

修改,有两种常见方式

之一个方式

models.UserInfo.objects.filter(id=nid).update(username=u,password=p)

第二个方式

obj=models.UserInfo.objects.filter(id=nid)

obj.username=u

obj.save()

django模型新增数据库的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于django模型新增数据库,Django模型实现数据库条目新增功能,django orm创建数据表的信息别忘了在本站进行查找喔。

成都创新互联科技有限公司,是一家专注于互联网、IDC服务、应用软件开发、网站建设推广的公司,为客户提供互联网基础服务!
创新互联(www.cdcxhl.com)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。创新互联成都老牌IDC服务商,专注四川成都IDC机房服务器托管/机柜租用。为您精选优质idc数据中心机房租用、服务器托管、机柜租赁、大带宽租用,可选线路电信、移动、联通等。

标题名称:Django模型实现数据库条目新增功能(django模型新增数据库)
转载源于:http://www.gawzjz.com/qtweb2/news24/24224.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联