def add(self, title, timezone, type=None, name=None, meta={}, content={}, definition=None, group=None): # look up the right class depending on the type (we need to do # this a bit akwardly here, because Resource does not use the # ModelBase as declarative base) resource = Resource.get_polymorphic_class(type, Resource)() resource.id == uuid4() resource.name = name or normalize_for_url(title) resource.title = title resource.timezone = timezone resource.meta = meta resource.content = content resource.definition = definition resource.group = group self.session.add(resource) self.session.flush() return self.bind(resource)