Пример #1
0
    def __getitem__(self, index):
        """
        Override item access to convert types.

        """
        value = super(SchemaAwareList, self).__getitem__(index)
        if isinstance(value, SchemaAware):
            return value

        items_schema = self.__class__.SCHEMA["items"]
        items_class = lookup(items_schema)
        if items_class is not None:
            value = items_class(value)
            self[index] = value
        return value
Пример #2
0
    def __getitem__(self, index):
        """
        Override item access to convert types.

        """
        value = super(SchemaAwareList, self).__getitem__(index)
        if isinstance(value, SchemaAware):
            return value

        items_schema = self.__class__.SCHEMA["items"]
        items_class = lookup(items_schema)
        if items_class is not None:
            value = items_class(value)
            self[index] = value
        return value
Пример #3
0
    def __getitem__(self, key):
        """
        Override item access to constuct model objects.

        """
        value = super(SchemaAwareDict, self).__getitem__(key)
        if isinstance(value, SchemaAware):
            return value

        property_schema = self.property_schema(key)
        property_class = lookup(property_schema)
        if property_class is not None:
            value = property_class(value)
            self[key] = value
        return value
Пример #4
0
    def __getitem__(self, key):
        """
        Override item access to constuct model objects.

        """
        value = super(SchemaAwareDict, self).__getitem__(key)
        if isinstance(value, SchemaAware):
            return value

        property_schema = self.property_schema(key)
        property_class = lookup(property_schema)
        if property_class is not None:
            value = property_class(value)
            self[key] = value
        return value