Add a silent option to updateOrCreateFromFields
authorSverre Rabbelier <srabbelier@gmail.com>
Sat, 18 Apr 2009 18:59:53 +0000
changeset 2221 1177ab97c2f0
parent 2220 6007ed887fee
child 2222 a91d55e9c9cd
Add a silent option to updateOrCreateFromFields Patch by: Sverre Rabbelier
app/soc/logic/models/base.py
--- a/app/soc/logic/models/base.py	Sat Apr 18 17:14:42 2009 +0000
+++ b/app/soc/logic/models/base.py	Sat Apr 18 18:59:53 2009 +0000
@@ -443,11 +443,12 @@
 
     return entity
 
-  def updateOrCreateFromFields(self, properties):
+  def updateOrCreateFromFields(self, properties, silent=False):
     """Creates a new entity with the supplied properties.
 
     Args:
       properties: dict with entity properties and their values
+      silent: if True, do not run the _onCreate hook
     """
 
     for property_name in properties:
@@ -460,7 +461,9 @@
       key_name = self.getKeyNameFromFields(properties)
       entity = self._model.get_or_insert(key_name, **properties)
 
-    self._onCreate(entity)
+    if not silent:
+      self._onCreate(entity)
+
     return entity
 
   def isDeletable(self, entity):