python中关于django对数据库Mysql的增删改查操作详解


本文摘自php中文网,作者黄舟,侵删。

下面小编就为大家带来一篇python django 增删改查操作 数据库Mysql。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

下面介绍一下django增删改查操作:

1、view.py

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

# -*- coding: utf-8 -*-

from __future__ import unicode_literals

from django.http import HttpResponse

from polls.models import Test

from django.shortcuts import render

# Create your views here.

# 解决乱码

import sys

reload(sys)

sys.setdefaultencoding('utf-8')

# 数据库操作

def testdb(request):

  test1 = Test(name='温鸿雨2')

  test1.save()

  return HttpResponse("<p>数据添加成功!</p>")

 

# 查询数据库

def selectDB(request):

 

  # 通过objects这个模型管理器的all()获得所有数据行,相当于SQL中的SELECT * FROM

  list = Test.objects.all()

  returnvalue = []

  for v in list:

    returnvalue.append(v.name)

    print v.name

 

  print "++++++++++++获取单个对象++++++++++++++++++"

  # 获取单个对象

  response1 = Test.objects.filter(id=1)

  print response1

  for v1 in response1:

    returnvalue2 = "id : ", v1.id, " 姓名:", v1.name

    print returnvalue2

 

  print "++++++++++++限制返回的数据 相当于 SQL 中的 OFFSET 0 LIMIT 2;++++++++++++++++++"

  response2 = Test.objects.order_by('name')[0:2]

  returnvalue3 = {}

  for v2 in response2:

    returnvalue3[v2.id] = v2.name

 

  print returnvalue3.items()

  print "+++++++++++输出结果:++++++++++++++++++++++++++++++"

  return HttpResponse(returnvalue3.items())

 

#修改数据可以使用 save() 或 update():

def updateDB(request):

  # 修改其中一个id=1的name字段,再save,相当于SQL中的UPDATE

  test1 = Test.objects.get(id=1)

  test1.name = 'Google'

  test1.save()

 

  # 另外一种方式

  #Test.objects.filter(id=1).update(name='Google')

  # 修改所有的列

  # Test.objects.all().update(name='Google')

 

  return HttpResponse("更新数据成功")

 

def deleteDB(request):

  # 删除id=1的数据

  test1 = Test.objects.get(id=3)

  test1.delete()

  return HttpResponse("删除数据成功")

2、urls.py

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

"""pythondjango URL Configuration

 

The `urlpatterns` list routes URLs to views. For more information please see:

  https://docs.djangoproject.com/en/1.11/topics/http/urls/

Examples:

Function views

  1. Add an import: from my_app import views

  2. Add a URL to urlpatterns: url(r'^$', views.home, name='home')

Class-based views

  1. Add an import: from other_app.views import Home

  2. Add a URL to urlpatterns: url(r'^$', Home.as_view(), name='home')

Including another URLconf

  1. Import the include() function: from django.conf.urls import url, include

  2. Add a URL to urlpatterns: url(r'^blog/', include('blog.urls'))

"""

from django.conf.urls import url

from django.contrib import admin

from BlogDjango import views

from polls import views as pollsviews, search, search2

 

urlpatterns = [

  url(r'^admin/', admin.site.urls),

  url(r'^hello/+\d', views.hello),

  url(r'^base/', views.base),

  url(r'^testdb$', pollsviews.testdb),

  url(r'^querydb$', pollsviews.selectDB),

  url(r'^updateDB$', pollsviews.updateDB),

  url(r'^deleteDB$', pollsviews.deleteDB),

]

3、models.py

1

2

3

4

5

6

7

8

9

10

# -*- coding: utf-8 -*-

from __future__ import unicode_literals

 

from django.db import models

 

# Create your models here.

 

class Test(models.Model):

 

  name = models.CharField(max_length=20)

以上就是python中关于django对数据库Mysql的增删改查操作详解的详细内容,更多文章请关注木庄网络博客!!

相关阅读 >>

Python如何对字符串大小写进行转换

Python中排列组合计算操作的实现示例

Python环境下安装mysqldb模块

如何在Python中使用运算符?(代码实例)

Python字典dict类型合并详解

Python语言公开发行版本诞生于哪年

Python中常用字符串的操作(示例代码)

Python模块和类区别

讲解Python核心基础之面向对象

如何通过Python批量处理套娃式文件夹

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...