day62作业
1.整理今日内容到博客
2.利用无名有名 反向解析 完成数据的增删改查
选做:
研究FBV内部原理
2.利用无名有名,反向解析,完成数据的增删改查
views.py
from django.shortcuts import render
from django.shortcuts import redirect
from django.shortcuts import HttpResponse
from django.shortcuts import reverse
from django.views import View
from app01 import models
# Create your views here.
def show_user(request):
# 拿到员工对象列表
employee_queryset = models.Employee.objects.all()
return render(request, 'show_user.html', {'employee_list': employee_queryset})
def add_user(request):
if request.method == 'POST':
username = request.POST.get('username')
password = request.POST.get('password')
age = request.POST.get('age')
phone = request.POST.get('phone')
models.Employee.objects.create(
username=username,
password=password,
age=age,
phone=phone,
)
return redirect(reverse('app01:show'))
return render(request, 'add_user.html')
def edit_user(request, edit_id):
edit_obj = models.Employee.objects.filter(id=edit_id).first()
if request.method == 'POST':
username = request.POST.get('username')
password = request.POST.get('password')
age = request.POST.get('age')
phone = request.POST.get('phone')
models.Employee.objects.filter(id=edit_id).update(
username=username,
password=password,
age=age,
phone=phone,
)
return redirect(reverse('app01:show'))
return render(request, 'edit_user.html', {'edit_obj': edit_obj})
def delete_user(request, delete_id):
delete_obj = models.Employee.objects.filter(id=delete_id).first()
delete_obj.delete()
return redirect(reverse('app01:show'))
urls.py
from django.conf.urls import url
from app01 import views
urlpatterns = [
url(r'^show_user/$', views.show_user, name='show'),
url(r'^add_user/$', views.add_user, name='add'),
url(r'^edit_user/(d+)/$', views.edit_user, name='edit'),
url(r'^delete_user/(?P<delete_id>d+)/$', views.delete_user, name='delete'),
]
edit_user.html
{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
...
</head>
<body>
<div class="container">
<div class="row">
<div class="col-md-4 col-md-offset-4">
<h3 class="text-center">编辑员工信息
<span class="glyphicon glyphicon-user" style="color: red"></span>
</h3>
<form action="{% url 'app01:edit' edit_obj.id %}?username={{edit_obj.username}}" method="post">
{% csrf_token %}
<div class="form-group">
<label for="userName">UserName</label>
<p class="has-success">
<input type="text" id="userName" class="form-control" name="username" placeholder="UserName~"
value="{{ edit_obj.username }}" disabled>
</p>
</div>
<div class="form-group">
<label for="password">Password</label>
<p class="has-warning">
<input type="password" id="password" class="form-control" name="password"
placeholder="Password~" value="{{ edit_obj.password }}">
</p>
</div>
<div class="form-group">
<label for="age">Age</label>
<p class="has-success">
<input type="text" id="age" class="form-control" name="age" placeholder="Age~"
value="{{ edit_obj.age }}">
</p>
</div>
<div class="form-group">
<label for="phone">Phone</label>
<p class="has-success">
<input type="text" id="phone" class="form-control" name="phone" placeholder="Phone~"
value="{{ edit_obj.phone }}">
</p>
</div>
<button type="submit" class="form-control btn btn-warning">确认修改</button>
</form>
</div>
</div>
</div>
</body>
</html>>