2012-10-11 3 views
1

여러 시간 동안 디버깅 한 후 포기하고 도움을 요청하십시오. 기존 앱은 예제와 같이 간단하지 않지만 문제는 동일합니다. 캐시 재로드 문제. 원본 앱은보기를 캐시하고 데이터베이스 및 다시로드 캐시의 내용을 변경해야하는 다른보기를 제공합니다. cache.clean()이 작동하지 않는다는 것을 보여주는 데모 앱을 만들었습니다. 데이터베이스의 내용이 만기 된 경우에만 캐시가 정리됩니다. 왜 이렇게이다?Cache.clean()이 작동하지 않습니다.

Demo can be found here.

+0

난 그냥 데모를 훑어보고 즉시 잘못된 것을 보지 못했습니다. db 캐시를 사용하고 있으므로 dj_debug_toolbar를 연결하는 데 도움이 될 수있는 한 가지 방법이 있습니다. 캐시와 db 모두에서 무슨 일이 벌어지고 있는지 보도록 도와줍니다. dj_debug_toolbar를 사용한 적이 없다면 체크 아웃 작업입니다. 과거에 많은 문제를 해결해주었습니다. 그냥 제안 (대답이 아닙니다). 행운을 빌어 요. –

+0

디버그 도구 모음을 사용하고 있습니다. 1 톤의 디버깅 후 작업 솔루션을 게시했습니다. – daGrevis

답변

1

문제는 브라우저 캐시이었다. 브라우저 자체가 결과를 캐시했기 때문에 내가 변경 사항을 보지 못했습니다.

해결 방법은 캐시 된보기 앞에 @cache_control(no_cache=True)을 추가하는 것이 었습니다. 이 데코레이터는 단순히 브라우저 캐시를 비활성화합니다.

+0

게시 솔루션을 제공해 주셔서 감사합니다. 나는 내 자신의 코드로 계속 염두에 두겠다. –

관련 문제