django - 添加用户 - 普通方法 -增 - 删 - 查
1. urls.py 增 删 查
urlpatterns = [ # 用户 path('user_list/', views.user_list), path('user_add/', views.user_add), path('user_detele/', views.user_detele), ]
2. views.py 查询 添加数据 删除数据 注意 无修改数据
from django.shortcuts import render, redirect, HttpResponse from app.models import Users # 用户列表 def user_list(request): response = Users.objects.all() return render(request, 'user_list.html', {'response': response}) # 用户添加 原始方法添加数据 def user_add(request): if request.method == 'GET': return render(request, 'user_add.html') # 接受数据 user = request.POST.get('user') pwd = request.POST.get('pwd') Users.objects.create(user=user, pwd=pwd) return redirect('/user_list/') # 用户删除 def user_detele(request): nid = request.GET.get('nid') Users.objects.filter(id=nid).delete() return redirect('/user_list/')
3. 显示页面 list.html 页面
删除代码 : <a href="/user_detele/?nid={{ item.id }}" type="button" class="btn btn-danger btn-xs">删除</a>
性别查询 :
sex_choice = ( (0, '男'), (1, '女'), ) sex = models.SmallIntegerField(verbose_name='性别', choices=sex_choice)
调用 : {{ item.get_sex_display }} get_字段名_display() 固定函数
部门连表注意显示 :
1. 需要 model.py 里面设置返回值 :
class Bumen(models.Model):
title = models.CharField(max_length=32, verbose_name='部门')
def __str__(self):
return self.title
2. 部门表 设置表 to='Bumen' 设置关联表 , to_field='id' 设置关联字段 , on_delete=models.CASCADE 设置级联删除
bu_men = models.ForeignKey(to='Bumen', to_field='id', on_delete=models.CASCADE, verbose_name='部门')
调用 : {{ item.bu_men }}
{% extends 'layout.html' %}
{% block content %}
<p>
<a href="/user_add/" class="btn btn-success">
<span class="glyphicon glyphicon-plus" aria-hidden="true"></span> 原始方法新建用户 </a>
</p>
<div class="bs-example" data-example-id="bordered-table">
<table class="table table-bordered">
<thead>
<tr>
<th>ID</th>
<th>用户名</th>
<th>密码</th>
<th>操作</th>
</tr>
</thead>
<tbody>
{% for item in response %}
<tr>
<th>{{ item.id }}</th>
<td>{{ item.user }}</td>
<td>{{ item.pwd }}</td>
<td>
<a type="button" class="btn btn-success btn-xs">无编辑</a>
<a href="/user_detele/?nid={{ item.id }}" type="button" class="btn btn-danger btn-xs">删除</a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
{% endblock %}
4. 添加页面代码 add.html
注意: {% csrf_token %}
{% extends 'layout.html' %}
{% block content %}
<h2> 添加用户 </h2>
<form method="post">
{% csrf_token %}
<div class="form-group">
<label for="exampleInputEmail1">用户名</label>
<input type="text" class="form-control" name="user" placeholder="用户名">
</div>
<div class="form-group">
<label for="exampleInputPassword1">密码</label>
<input type="password" class="form-control" name="pwd" placeholder="密码">
</div>
<button type="submit" class="btn btn-default">提交</button>
</form>
{% endblock %}

浙公网安备 33010602011771号