示例#1
0
    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)