Skip to content

Commit 521844f

Browse files
authored
Merge pull request #525 from leancloud/you-can-also-ignore-hooks-with-master-keys
fix: master key is also allowed to ignore hooks.
2 parents 18003fe + f6465ab commit 521844f

File tree

1 file changed

+16
-12
lines changed

1 file changed

+16
-12
lines changed

leancloud/object_.py

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -576,21 +576,25 @@ def set_acl(self, acl):
576576

577577
def disable_before_hook(self):
578578
hook_key = client.get_app_info().get("hook_key")
579-
if not hook_key:
580-
raise ValueError("disable_before_hook need LeanCloud hook key")
581-
self.ignore_hook("beforeSave")
582-
self.ignore_hook("beforeUpdate")
583-
self.ignore_hook("beforeDelete")
584-
return self
579+
master_key = client.get_app_info().get("master_key")
580+
if hook_key or master_key:
581+
self.ignore_hook("beforeSave")
582+
self.ignore_hook("beforeUpdate")
583+
self.ignore_hook("beforeDelete")
584+
return self
585+
else:
586+
raise ValueError("disable_before_hook needs master key or hook key")
585587

586588
def disable_after_hook(self):
587589
hook_key = client.get_app_info().get("hook_key")
588-
if not hook_key:
589-
raise ValueError("`disable_before_hook` need LeanCloud hook key")
590-
self.ignore_hook("afterSave")
591-
self.ignore_hook("afterUpdate")
592-
self.ignore_hook("afterDelete")
593-
return self
590+
master_key = client.get_app_info().get("master_key")
591+
if hook_key or master_key:
592+
self.ignore_hook("afterSave")
593+
self.ignore_hook("afterUpdate")
594+
self.ignore_hook("afterDelete")
595+
return self
596+
else:
597+
raise ValueError("disable_after_hook needs master key or hook key")
594598

595599
def ignore_hook(self, hook_name):
596600
if hook_name not in {

0 commit comments

Comments
 (0)