Q&A

modules 테이블에 등록된 모듈 삭제질문

2025.02.08 09:05
114
0
CMS/프레임워크 Rhymix 2.1
개발 언어 PHP 8.4

모듈을 삭제하려고 module_srl값을 deleteModule()에 전달하니 "Variable menu_item_srl for column parent_srl is not set" 오류가 발생합니다 확인해보니 모듈 생성할때  menu_item 테이블에 모듈의 menu가 같이 생성되고 삭제할때도 menu_item 테이블에서 삭제할 모듈의 menu_item을 삭제하고 이후에 modules 에서 삭제해야하는것같은데 제가 이해한게 맞는지 궁굼합니다!

 

그리고 여기서 내가 삭제하려는 modules의 menu_item_srl 값을 어떻게 찾아오는지 궁굼합니다

모듈에서 갖고있는 값인 menu_srl로 찾을 수 있는 방법은 menu모델에서 getMenu()로 동일한

menu_srl을 모두 가져오는 방법이 있는것같은데

 

가져온 복수의 값에서 삭제할 module의 mid값과 menu_item의 name값이 일치하는 값의 menu_tiem_srl을 찾아서 deleteMenuItem() 로 삭제해도 괜찮을까요?

 

아니면 menu_item_srl 바로찾아내는 query파일을 따로 만들어서 처리 하는게 좋을까요?

 

menu_item 테이블

캡처2.jpg

 

modules 테이블

캡처3.jpg

 

네비 Lv. 3

댓글 3

  • 2025.02.08 10:30 #1858135

    알아서 착착 지워져야 하는데, 해당 모듈과 관련된 DB가 여기저기 꼬여 있는 것 같습니다.
    특정 사이트만의 문제라면 DB에서 menu_item을 찾아 임의로 삭제하셔도 됩니다.

     

    만약 배포용 모듈인 경우, 특정 사이트의 DB가 꼬여있는 것을 기준으로 만드시면 곤란하겠지요.

    정상 상태는 단 하나뿐이지만, 꼬여있는 상태는 예측이 불가능하니까요.

  • 2025.02.08 11:08 #1858140

    아 역시.. 상태가 아니네요 환경을 다시 구성하고 원인을 찾아보겠습니다
    이왕 손대는거 정상적으로 굴러가게 만들어야죠! 답변 감사합니다😁

  • 2025.02.08 16:26 #1858201
    해결된 문제입니다!
    원인은 기진곰님 말씀대로 개발하면서 쌓였던 과거 modules의 db데이터가 라이믹스에서 정상적인 방법으로 삭제되지않고 query로 직접 삭제하면서 menu_item는 삭제하지않아 새로생성된 모듈menu_item과 꼬여서 문제가 발생하고있었습니다 라이믹스 db를 날리고 새로 설치하니 정상적으로 됩니다!