コード例 #1
0
ファイル: __init__.py プロジェクト: pombredanne/Guacamole
class InMemoryCachingManager(models.Manager):
    use_for_related_fields = True #Use this manager even for foreign keys

    def __init__(self, *args, **kwargs):
        self.lookup_fields = kwargs.get('lookup_fields', [])
        self.cache = LRUCacheDict(max_size=kwargs.get("max_size", 1024), expiration=kwargs.get("expiration", 15*60))
        _del_keys(kwargs, ['max_size', 'expiration', 'lookup_fields'] )

        super(InMemoryCachingManager, self).__init__(*args, **kwargs)

    def get_query_set(self):
        return CachingQuerySet(self.model)

    def clear_cache(self):
        self.cache.clear()
コード例 #2
0
ファイル: __init__.py プロジェクト: pombredanne/Guacamole
    def __init__(self, *args, **kwargs):
        self.lookup_fields = kwargs.get('lookup_fields', [])
        self.cache = LRUCacheDict(max_size=kwargs.get("max_size", 1024), expiration=kwargs.get("expiration", 15*60))
        _del_keys(kwargs, ['max_size', 'expiration', 'lookup_fields'] )

        super(InMemoryCachingManager, self).__init__(*args, **kwargs)