문서가 정보를 가질 수 있는 입력값 중에 extra_vars 라는 컬럼이 있습니다.
예전에 여기에 해당 문서의 특정한 고유의 변경되는 값을 해당 이벤트가 일어날때 저장되도록 해서 그 값을 이용하게 구현한 적이 있습니다. 애드온으로 구현했었는데요.
이때 구현하면 한가지 이상한 점이 있있습니다.
애드온에 의해 특정 이벤트에 해당 이벤트 기록을 저기에 저장을 했는데 해당 게시글을 수정하게 되면 해당 값이 사라져 버리는 문제점이 발견되었습니다.
그래서 해당 애드온에 procBoardInsertDocument_before 시점에서
해당 값을 쿼리해 온 후
Context::set('extra_vars', $exvars, true);
로 문서 저장 직전에 해당 값도 함께 가지도록 애드온에서 구현하여 불러온 값이 다시 저정되도록 했습니다.
저 값이 글을 수정하면 날아가게 만든 이유는 뭘까요???
1) 예전에 확장변수에 들어가던 값들은 모두 별도의 테이블로 빠져버렸고
2) 애드온으로 추가하셨던 확장변수는 글 수정 화면에서 다시 제출하지 않았을 테니
남은 것이 없어서 그냥 빈 값으로 업데이트되는 것 아닐까요?