做 网络网站烟台市建设工程质量监督站网站
做 网络网站,烟台市建设工程质量监督站网站,徐州网站制作报价,企业域名是什么意思啊让我们聊聊这个话题#xff0c; django如何存数据至mysql数据表里面#xff0c;你会用什么方法#xff1f;正常情况下#xff0c;我们form逻辑处理后#xff0c;直接form.save()#xff0c;是#xff0c;这个方法没毛病#xff1b;但有没有其他的方法呢#xff1f;假如…让我们聊聊这个话题 django如何存数据至mysql数据表里面你会用什么方法正常情况下我们form逻辑处理后直接form.save()是这个方法没毛病但有没有其他的方法呢假如我们有这样一个需要比如说我们我们现在有100台服务器要进行一个部署代码的操作那么每个服务器的操作我们都要在数据库里面做记录以便我们审记时好追溯此时使用form.save方法好像不能满足需求的这就需要使用方法二的方法如下演示:方法一if form.is_valid():......new_form form.save(commitFalse)new_form.fun p2p.scpnew_form.deploy_path deploy_pathnew_form.operate operatenew_form.status statusnew_form.context json.dumps(context, sort_keysTrue)new_form.save()form.save()方法二def do_copy_control(**kwargs):target_server get_target_server()while target_server:command /usr/bin/python /data/agent_scripts/scp_agent.py %s %s %s %s %s %s %s %s % (kwargs[source_server].networks.private_address,kwargs[source_server].superuser,kwargs[source_server].superuser_pass,kwargs[source_path], kwargs[deploy_path], kwargs[release_abs_path],kwargs[compress_file], kwargs[md5sum])data {expr_form: list,client: local,fun: cmd.run,tgt: target_server.host_name,arg: command,}salt SaltApi()salt.get_token()header salt.get_header()context process(header, **data)if regex_match_error(json.dumps(context)) is True:status Trueelse:status False# save to mysqlstorage_dict {operate: kwargs[operate],timestamp: datetime.datetime.now().strftime(%Y-%m-%d %H:%M:%S),client: local,use_zone: kwargs[use_zone],fun: cmd.run,deploy_path: kwargs[deploy_path],release_path: kwargs[release_abs_path],content: kwargs[content],status: status,context: context,departments_id: kwargs[departments_id],repository_name_id: kwargs[repository_name_id],zones_id: kwargs[zones_id],}storage Release.objects.create(**storage_dict)for item in kwargs[server]:storage.tgt.add(item)logging_out(source_server: %s target_server: %s result: %s % (kwargs[source_server].host_name,target_server.host_name, context))if regex_match_error(context):thread threading.Thread(targetdo_copy_control, kwargskwargs)thread.start()else:add_error_list(target_server.host_name)target_server get_target_server()storage Release.objects.create(**storage_dict)storage_dict就是我们每行的数据, Release.objects.create()是存入数据库的方法而storage.tgt.add则是对manytomany的外键进行一个处理
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/87889.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!