def save(data, permission=None): validator = PermissionValidator() data = validator.deserialize(data) if permission is None: q = Permission.all() q = q.filter(Permission.project == data['project']) q = q.filter(Permission.account == data['account']) permission = q.first() if permission is None: permission = Permission() permission.project = data.get('project') permission.account = data.get('account') permission.reader = data['reader'] or data['editor'] or data['admin'] permission.editor = data['editor'] or data['admin'] permission.admin = data['admin'] db.session.add(permission) db.session.flush() return permission
def save(data, permission=None): validator = PermissionValidator() data = validator.deserialize(data) if permission is None: q = Permission.all() q = q.filter(Permission.project == data["project"]) q = q.filter(Permission.account == data["account"]) permission = q.first() if permission is None: permission = Permission() permission.project = data.get("project") permission.account = data.get("account") permission.reader = data["reader"] or data["editor"] or data["admin"] permission.editor = data["editor"] or data["admin"] permission.admin = data["admin"] db.session.add(permission) db.session.flush() return permission