2012-11-05 4 views
0

기본 장고 캐시 키 생성기 :장고 memcahed 키 생성

def make_key(key, key_prefix, version): 
    return ':'.join([key_prefix, str(version), key]) 

내가로 변경하려면 :

에서 settings.py

def make_key(key, key_prefix, version): 
    return key 

CACHES = { 
    'default': { 
     'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 
     'LOCATION': '127.0.0.1:11211', 
     'KEY_FUNCTION' : 'settings.make_key', 
     } 
} 

하지만 장고 오래된 기본 기능 키 (생성 접두사 - 버전 - 키) 어떻게 그것을 변경하려면?

답변

6

시도 :

def make_key(key, key_prefix, version): 
    return key 

CACHES = { 
    'default': { 
     'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 
     'LOCATION': '127.0.0.1:11211', 
     'KEY_FUNCTION' : make_key 
     } 
} 

나는이 문서가에서 "문자열 점선 경로를 포함하는"하지만 난 당신이 또한 호출 객체 통과 할 수 장고 source code에서 볼 것을 알고있다 (예를 들어, 기능.).

문자열로 전달해야하는 경우이 함수를 다른 모듈로 이동하고 yourproject.module.make_keyKEY_FUNCTION으로 설정해야합니다.

+0

callable works thanx – user1624522

+1

감사합니다. 오해의 여지가 있습니다. – Esteban