1.概述
使用Migrate对数据库数据进行修改
使用put请求,在postman中获取到id,name,desc字段。再判断是否存在,存在就获取他的信息,再赋值form中获取到的值就可以啦
2.代码展示
# flask_shop/role/view.py
from ast import Delete
from flask import request
from flask_shop.role import role,role_api
from flask_shop import models,db
from flask_restful import Resource
from flask_shop.utils.message import to_dict_msg
class Role(Resource):
# 获取数据
def get(self):
role_list = []
try:
roles = models.Role.query.all()
role_list = [r.to_dict() for r in roles]
return to_dict_msg(200, role_list, '获取角色列表成功')
except Exception as e:
return to_dict_msg(20000)
# 增加数据
def post(self):
name = request.form.get('name')
desc = request.form.get('desc')
try:
if name:
role = models.Role(name= name, desc= desc)
db.session.add(role)
db.session.commit()
return to_dict_msg(200, msg='增加角色成功!!!!')
except Exception as e:
print(e)
return to_dict_msg(20000)
# 删除数据
def delete(self):
try:
id = int(request.form.get('id'))
r = models.Role.query.get(id)
if r:
db.session.delete(r)
db.session.commit()
return to_dict_msg(200,msg="删除角色成功!!!!!")
except Exception:
return to_dict_msg(20000)
# 修改数据
def put(self):
try:
id = int(request.form.get('id'))
name = request.form.get('name').strip() if request.form.get('name') else ''
desc = request.form.get('desc').strip() if request.form.get('desc') else ''
if name:
r = models.Role.query.get(id)
if r:
r.name = name
r.desc = desc
db.session.commit()
return to_dict_msg(200, msg= '修改角色信息成功!!!')
return to_dict_msg(10020)
except Exception as e:
return to_dict_msg(20000)
role_api.add_resource(Role, '/role')