下面小编就为大家带来一篇python django 增删改查操作 数据库mysql。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
下面介绍一下django增删改查操作:
1、view.py
# -*- 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
"""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
# -*- 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的增删改查操作详解的详细内容。