Python Django框架( 三 )

③ 更新数据
[python] view plain copy
from django.http import HttpResponsefrom TestModel.models import Testdef database(request):# 修改id=1的name字段再save,相当于SQL中的UPDATEtest = Test.objects.get(id=1)test.name='Alice'test.save()# 另一种方式# Test.objects.filter(id=1).update(name='Alice)# 修改所有的列# Test.objects.all()..update(name='google')return HttpResponse("<p>数据修改成功</p>")④ 删除数据
删除数据库中的对象只需调用该对象的delete()方法即可:
[python] view plain copy
from django.http import HttpResponsefrom TestModel.models import Testdef database(request):# 删除id=1的数据test = Test.objects.get(id=1)test.delete()# 另外一种方式# Test.objects.filter(id=1).delete()# 删除所有数据# Test.objects.all().delete()return HttpResponse("<p>数据删除成功</p>")8、Django表单
1) Get方法
① 创建一个 search.py 文件,用于接收用户的请求:
[python] view plain copy
from django.http import HttpResponsefrom django.shortcuts import render_to_response# 表单def search_form(request):return render_to_response('search_form.html')# 接收请求数据def search(request):request.encoding='utf-8'if 'q' in request.GET:message = '搜索的内容为: ' + request.GET['q'].encode('utf-8')else:message = '提交了空表单'return HttpResponse(message)② 在templates中添加 search_form.html 表单:
[html] view plain copy
<!DOCTYPE html><html><head><meta charset="utf-8"><title></title></head><body><form action="/search" method="get"><input type="text" name="q"><input type="submit" value=https://www.isolves.com/it/cxkf/yy/Python/2019-08-26/"搜索">③ 修改urls.py:
[python] view plain copy
from django.conf.urls import urlfrom . import view,database,searchurlpatterns = [url(r'^helloWorld$', view.helloWorld),url(r'^database$', database.database),url(r'^search-form$', search.search_form),url(r'^search$', search.search)]④ 启动服务器,并在浏览器访问:127.0.0.1:8000/search_form 。
2) Post方法
① 在templates中添加 post.html 表单:
[python] view plain copy
<!DOCTYPE html><html><head><meta charset="utf-8"><title></title></head><body><form action="/search-post" method="post">{% csrf_token %}<input type="text" name="q"><input type="submit" value=https://www.isolves.com/it/cxkf/yy/Python/2019-08-26/"搜索">

{{ rlt }}

{% csrf_token %}标签:csrf 全称是 Cross Site Request Forgery,这是Django提供的防止伪装提交请求的功能 。POST 方法提交的表格,必须有此标签 。
② 新建 search2.py 文件并使用 search_post 函数来处理 POST 请求:
[python] view plain copy
from django.shortcuts import renderfrom django.views.decorators import csrf# 接收POST请求数据def search_post(request):ctx ={}if request.POST:ctx['rlt'] = request.POST['q']return render(request, "post.html", ctx)③ 修改urls.py:
[python] view plain copy
from django.conf.urls import urlfrom . import view,database,searchurlpatterns = [url(r'^helloWorld$', view.helloWorld),url(r'^database$', database.database),url(r'^search-form$', search.search_form),url(r'^search$', search.search)url(r'^search-post$', search2.search_post)]④ 启动服务器,并在浏览器访问:127.0.0.1:8000/search_post 。
以上就是对Python Django框架进行的知识梳理讲解,包括Django简介、特点、项目目录等内容,希望你能学会 。

【Python Django框架】


推荐阅读