如何解决Flask restful/sqlalchemy 更新/setattr 多个字典同时
如何使用 Python
在 Flask framework
中同时更新/设置多个字典?
假设我有三张表PeopleSkill
、SkillRecord
和PeoplePecord
(其实是11张不同的表,情况类似),每张表都有project_id
和{{1 }},我想改变人的skill_name,我只能改变表skill_name
的,我不能改变PeopleSkill
和PeoplePecord
,有什么办法解决这个问题吗?一旦一列发生变化,其他表的相关列也会发生变化。现有数据库中没有外键,我别无选择?
SkillRecord
以下是 Postman 上 update_project_args = reqparse.RequestParser()
update_project_args.add_argument("project_id",type=str,required=True,help="project_id")
update_project_args.add_argument("people_skill",type=dict,required=False,help='people_skill')
update_project_args.add_argument("skill_record",help='skill_record')
update_project_args.add_argument("people_record",help='people_record')
def put(self):
args = self.project.parse_args()
try:
project_id = args.get("project_id")
people_skill = args.get("people_skill")
skill_record = args.get("skill_record")
project_record = args.get("project_record")
d_skill = db.session.query(PeopleSkill).filter_by(project_id=project_id).first()
{setattr(d_skill,k,v) for k,v in skill.items()}
d_people_skill = db.session.query(PeopleRecord).filter_by(project_id=project_id).first()
{setattr(d_people_skill,v in people_skill.items()}
db.session.commit()
return {"status": True,"message": "Saved successfully","data": None}
except Exception as e:
db.session.rollback()
current_app.logger.error(e)
return {"status": False,"message": "Saved Failed","data": None}
选项的 URL 的 JOSN 片段。
PUT
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。