发布于2022-05-07 23:50 阅读(1219) 评论(0) 点赞(18) 收藏(3)
比如说,有一种方法创建一个模型对象并将值添加到模型对象字段。
def main_method():
obj, created = ModelA.objects.get_or_create(a="asd", b=1)
一些导入的数据将附加到相关字段:
obj.c = "qwe"
obj.d = 2
...
sub_method_1(obj)
sub_method_2(obj)
此外,还有 2 个或更多子方法创建新模型对象并链接到主对象作为外键。
def sub_method_1(obj):
obj_new, created = ModelB.objects.get_or_create(...)
obj.e = new_obj
obj.save()
def sub_method_2(obj):
obj_new, created = ModelC.objects.get_or_create(...)
obj.f = new_obj
obj.save()
但是,当子方法完成并返回主方法时,还有几个可用的保存方法调用。
def main_method():
....
obj.g = "ert"
obj.h = 3
obj.save()
这种方法在实践中是否可行,或者在主方法的末尾应该只有一个保存,从子方法返回新对象并在保存主对象之前将对象分配给外键字段?
请您给我一份有关这些方法优缺点的文档吗?
更好的选择是将所有方法用作setter ,并在您真正完成使用实例时调用方法save()或者您确实需要数据库中存在的方法。
当然,取决于您的工作情况,但通常是更好的选择:)
作者:黑洞官方问答小能手
链接:https://www.pythonheidong.com/blog/article/1489052/8b273d8416aaf1286ec6/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!