如何在不发送信号的情况下保存模型?

agi*_*liq 23 python django django-models

如何保存模型,以便不发送信号.(post_save和pre_save)

Jia*_*aro 42

这有点像黑客,但你可以这样做:

使用带过滤器的唯一标识符,然后使用查询集的更新方法(不触发信号)

user_id = 142187
User.objects.filter(id=user_id).update(name='tom')
Run Code Online (Sandbox Code Playgroud)


小智 11

ModelName.objects.bulk_create([your object/objects])
Run Code Online (Sandbox Code Playgroud)

你也可以在这里阅读更多django 文档


Jak*_*ake 7

票证已标记为"wontfix",因为:

简而言之,听起来,鉴于信号的定义目的,附加的信号处理程序需要变得更加智能(如davedash的建议),而不是发出信号的代码.禁用信号只是一个快速解决方案,当您确切知道哪些处理程序附加到信号时它将起作用,并且它通过将修复程序放在错误的位置来隐藏潜在的问题.