了解Django
简单了解一下什么是Django或者说Django是做什么的? - 落叶的博客 - 博客园
通过之前的程序,已经可以将部门管理的新建部门,删除部门实现。
接下来实现编辑操作:
一.在url中添加页面
path('depart/<int:nid>/edit/', views.depart_edit),
二.修改标题,编写视图函数
<div class="panel-heading">
<h3 class="panel-title">修改部门</h3>
</div>
def depart_edit(request, nid):
# 根据nid , 获取他的数据[obj.
row_object = models.Department.objects.filter(id=nid).first()
# 获取符合条件的第一个对象,避免有重复的nid
# print(row_object.id, row_object.title)
return render(request, 'depart_edit.html', {"row_object": row_object})
value input框中的默认值
<input type="text" class="form-control" placeholder="标题" name="title" value="{{ row_object.title }}"/>
在主页面中修改,obj.id
<a class="btn btn-primary btn-xs" href="/depart/{{ obj.id }}/edit/">编辑</a>
改完之后,重新runserver一下,不然nid函数不会更新。(ε=ε=ε=┏(゜ロ゜;)┛
三.更新数据库中的修改
def depart_edit(request, nid):
if request.method == "GET":
# 根据nid , 获取他的数据[obj.
row_object = models.Department.objects.filter(id=nid).first()
# print(row_object.id, row_object.title)
return render(request, 'depart_edit.html', {"row_object": row_object})
# 获取用户提交的标题
title = request.POST.get("title")
# 根据ID 找到数据库中的数据并更新
models.Department.objects.filter(id=nid).update(title=title)
return redirect("/depart/list/")