문서의 캐시를 수동으로 갱신하는 방법이 궁금합니다 (글쓰기제외)
CMS/프레임워크 | Rhymix 1.9 |
---|---|
개발 언어 | PHP 7.0 |
안녕하세요~
예전부터 궁금한 게 있어서요
글쓰기를 통해서 문서를 업데이트 하면 해당 문서의 캐시가 갱신되는 줄은 알고 있습니다만,
글쓰기 작업을 통하지 않고 db를 직접 수정할 경우에는 어떻게 캐시를 갱신해야 되는지 모르겠어요
document_srl를 변수로 하는 어떤 함수를 실행시켜야 되지 않을까 하는 막연한 추측만 있네요
슈퍼캐시를 통해서
$oModel = getModel('supercache');
$oModel->deleteFullPageCache(0,136663);
이런식으로 실행해보려고 해도 안되네요
초보라 flow 따라가는 데에도 한계가 있어서 조언을 구하고자 합니다.
댓글 4
인용하신 소스는 슈퍼캐시 모듈의 전체화면 캐시를 지우는 기능이고요, 코어 내부적으로 사용하는 문서 캐시는 그것과 관계없습니다.
글번호가 $document_srl 변수에 담겨 있다고 하면, 라이믹스 기준으로
$cache_key = 'document_item:' . getNumberingPath($this->document_srl) . $this->document_srl;
Rhymix\Framework\Cache::delete($cache_key);
하시면 됩니다.
아니면 그냥 DB작업 후 캐시파일 재생성을 클릭하셔도 되고요.
코드 부분이 제가 원하는 답변이었습니다.
문제 잘 해결했어요~
정말 감사드립니다. 기진곰님^^
document도 member처럼 캐시 비우는 함수를 코어에서 따로 제공하는 것이 더 안정적이겠군요.
콘텐츠 활용 등으로 문서를 db에서 수정하게 되는 경우 특정 문서 1개만 캐시를 비워야 하는 일이 종종 생기더라고요