1增刪改查步驟
(第一步)配置項(xiàng)目里的urls.py文件
from django.conf.urls import include,url
from django.contrib import admin
urlpatterns=[
url(r'^admin/', include(admin.site.urls)),-------include()表示你接下來(lái)的路徑
#url(r'^depart/',include('company.urls',namespace='company')),
url(r'^com/',include('company.urls',namespace='com')),----- 我要進(jìn)入app為company里的urls
url(r'^user/',include('uuser.urls',namespace='user')), ? ??
]
(二)接下來(lái)配置app里的urls.py文件 ??前面是匹配正則,后面是調(diào)用views.py文件里的方法????
from django.conf.urls import include,url
from django.contrib import admin
from . import views
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^companyA/$',views.departall,name='departall'),
url(r'^company/add/$',views.depart_add,name='depart_add')? ? ??
url(r'^company/add_list$',views.departNewAdd,name='departNewAdd'),
url(r'^company/delete$',views.depart_delete,name='depart_delete'),
url(r'^company/update$',views.depart_update,name='depart_update'),
url(r'^company/update_handler$',views.depart_update_handler,name='depart_update_handler'),
(三)配置app里的views.py文件 (增)
#導(dǎo)入模塊
from django.shortcuts import render
from django.http import *
from .models import *
from django.core.urlresolvers import reverse
#全部信息
def departall(request):
bookinfo_list =depart.objects.all()
context={
'departName':bookinfo_list,
'titlt':'這是部門名'
}
return render(request=request,template_name='companyall/departall.html',context=context)
#顯示一個(gè)信息
def departMobanOne(request,pk):
? ? ? ? bookinfo_list =depart.objects.get(pk=pk)
? ? ? ? context={
? ? ? ? ? ? ? ? 'departName':bookinfo_list,
? ? ? ? ? ? ? ? 'titlt':'這是部門名'
? ? ? ? }
? ? ? ? return render(request=request,template_name='companyall/depart_info.html',context=context)
def depart_add(request):
return render(request=request,template_name='companyall/depart_add.html',context=None)---渲染模板
#增加內(nèi)容
def departNewAdd(request):
#處理新增
infos=request.POST ? ------要與htm里form表單的方法相一致
depart1=infos.get('btitle') ??
#包裝對(duì)象
depart2=depart()
depart2.dname=depart1
#增加對(duì)象
depart2.save()
#return HttpResponse('ok') ?--------轉(zhuǎn)發(fā)
#return HttpResponseRedirect()
return HttpResponseRedirect(reverse('com:departall'))-------------重定向
#增加成功之后的頁(yè)面
def departAddO(request):
return HttpResponse('ok')
(四)--創(chuàng)建一個(gè)與與app同級(jí)的templase文件
????????里面盡量在創(chuàng)建一個(gè)與app同名的文件夾,在他下面在創(chuàng)建你所需的html文件(供views.py文件使用)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (depart_add.html)
刪
def depart_delete(request):
pk=request.GET.get('pk')
ret=depart.objects.filter(pk=pk)
ret.delete()
return HttpResponseRedirect(reverse('com:departall'))
改
def depart_update(request):
pk=request.GET.get('pk')
depart1=depart.objects.get(pk=pk)
context={
'depart1':depart1
}
return render(request=request,template_name='companyall/depart_update.html',context=context)
def depart_update_handler(request):
#獲取對(duì)象
infos=request.POST
#獲取屬性
pk=infos.get('pk')
dname=infos.get('btitle')
#包裝對(duì)象
Depart=depart.objects.filter(pk=pk)[0]
Depart.dname=dname
#修改對(duì)象
Depart.save()
#重定向
return HttpResponseRedirect(reverse('com:departall'))
????????????????????????????????????????????????????????????????????????????????(depart_update.html)
(五)鏈接服務(wù)器,輸入對(duì)應(yīng)的url正則