一、业务功能分析

  1,业务需求分析

    用户的增删改查,权限分组的控制

  2,功能分析

    用户列表

    修改用户

    删除用户

二、用户列表

  1.业务流程分析

    接收参数

    校验参数

    查询数据

    分页

  2.接口设计

    1.接口说明:

    类目        说明

    请求方法      GET

    url定义       /admin/users/

    参数格式      查询参数

    2.参数说明:

    参数名      类型      是否必须      描述

    username     字符串      否      要查询的用户名

    group       整数       否      要查询的group_id

    is_staff       整数       否      用户是否员工

    is_superuser    整数       否      父菜单ID

    page        整数       否      页码

    3.返回数据

    html

三、用户详情页面

  1.接口设计

  1.接口说明:

  类目        说明

  请求方法      GET

  url定义       /admin/user/<int:user_id>

  参数格式      路径参数

  2,参数说明

  参数名    类型      是否必须      描述

  user_id     整数        是       要查询的用户id

  3,返回数据

    html

四、修改用户

  1.接口设计

  1.1.接口说明:

  类目        说明

  请求方法      PUT

  url定义       /admin/user/<int:user_id>

  参数格式      路径参数

  1.2,参数说明

  参数名        类型      是否必须      描述

  user_id         整数        是       用户id

  username       字符串        是      用户名

  mobile         字符串        是       手机号码

  is_staff        字符串        是       是否职员

  is_superuser   字符串        是      是否超级用户

  is_active       字符串        是       是否激活 

  1.3,返回数据

    {

    ”errno”:\’0\’

    ”errmsg”:”用户修改成功!”

    }

    如果有错误,返回html表单

  2.后端代码 

class UserUpdateView(View):

def put(self, request, user_id):
#1,拿到要修改多用户对象
user = User.objects.first(id=user_id).first()
#1.1判断用户是否存在
if not user:
return json_response(errno=Code.NODATA, errmsg=\'没有此用户\')
#2,拿到前端传递的参数
put_data = QueryDict(request.body)
#3,校验参数
form = UserModelForm(put_data, instance=user)
if form.is_valid():
#4,如果成功,保存数据
form.save()
return json_response(errmsg=\'用户修改成功\')
else:
#5,如果不成功就返回渲染了错误提示信息的页面
return render(request, \'myadmin/user/user_detail.html\', context={\'form\': form})

 

版权声明:本文为wdty原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/wdty/p/11449309.html