it-swarm-ko.tech

모듈을 제거 할 때 변수 테이블에서 변수를 어떻게 제거합니까?

변수 테이블에 일부 변수를 추가하는 Drupal 6 모듈에서 작업 중입니다. 모듈을 제거 할 때 변수 테이블에서 해당 변수를 제거하려면 어떻게해야합니까?

7
Jim

변수를 추적하고 variable_del() 구현 내에서 적절한 hook_uninstall() 호출을 추가하십시오.

function foo_uninstall() {
  variable_del('foo_variable1');
  variable_del('foo_variable2');
}

hook_uninstall()은 설치 후크이므로 모듈의 .install 파일 (예 : foo.install)에 있어야합니다.

네임 스페이스 충돌이 다시 발생할 수 있으므로 모듈 이름 앞에 접두사 all 변수를 삭제하면 안됩니다. 예를 들어, 모듈 이름이 foo 인 경우 접두사 foo_가있는 모든 변수에 대해 variables 테이블을 폴링해야한다고 생각할 수 있습니다. 그러나 foo_awesome라는 모듈을 작성하면 어떻게됩니까? 내 변수도 삭제합니다. 그것은 좋지 않을 것입니다.

13
user7

UPDATE : 이 블로그 게시물에 대한 토론 을 자세히 살펴보면 Dave Reid에서 Drupal 코어 사용 방법을 채택하십시오.

2
Matt V.