사이트에 Tiles가 설치되어 있고 Masonry로 전환하려는 경우, 기존 갤러리 게시물 모두에서 갤러리 div의 속성을 data-masonry-gallery로 변경해야 합니다. 이는 기존 갤러리 게시물이 여전히 올바르게 렌더링되기를 원하지만 두 컴포넌트를 동시에 설치하고 싶지 않을 때 적용됩니다.
저도 제 사이트에서 이 전환을 수행해 보았기 때문에, 어떻게 하면 되는지 공유해 보려 합니다. 누군가에게 도움이 될 수 있기를 바랍니다.
가장 직관적인 방법은 게시물을 수동으로 편집하는 것입니다. 변경해야 할 게시물이 많지 않다면 이 방법이 작동하지만, 모든 게시물을 찾는 것이 여전히 번거로울 수 있습니다. 하지만 걱정하지 마세요, data explorer가 구원투수로 나섭니다! 다음 SQL을 실행하면 필요한 결과를 정확히 얻을 수 있습니다.
SELECT user_id, topic_id, post_number
FROM posts p
WHERE raw ~~ '%data-theme-tiles%'
수동으로 편집하기에는 항목이 너무 많다면 rake를 사용하여 모든 문자열을 교체할 수 있습니다. 이를 위해 서버에 SSH로 로그인한 다음 다음을 실행해야 합니다:
cd /var/discourse
./launcher enter app
rake posts:remap["data-theme-tiles","data-masonry-gallery"]
해당 솔루션에 대해 더 자세한 내용은 이 게시물에서 확인할 수 있습니다. rake posts:remap 명령어에 대한 해당 게시물의 경고 사항을 꼭 확인하세요:
이 작업을 수행하는 다른 방법들도 아마 있을 것입니다. 예를 들어, 원한다면 컴포넌트 코드를 수정하여 두 속성을 모두 찾도록 할 수도 있습니다.