def delete_model(self, model): """ delete model. """ with cache_lock("delete_model_%s" % str(model.id)): with gsdb.switch_rp("PRIMARY"): model.delete()
def save_model(self, data): """ save model. """ with cache_lock("save_model_%s" % sign_data(data)): with gsdb.switch_rp("PRIMARY"): model = self.model(**data) model.save() return model
def update_model(self, model, data): """ update model. """ with cache_lock("update_model_%s" % str(model.id)): with gsdb.switch_rp("PRIMARY"): for key, value in data.items(): if key == "id": continue if hasattr(model, key): setattr(model, key, value) model.save() return model