2011-02-10 2 views
2

이것은 여러 기능에서 잠재적으로 사용될 수있는 구성 요소가있을 때 기능을 작성하는 방법에 대한 일반적인 질문입니다.다중 기능 및 재사용 불가능한 구성 요소의 Drupal

컨텍스트 (c1)가 뷰 (v1)를 가져 와서 기능 (f1)에 추가된다고 가정합니다. 자, v1이 다른 곳에서 잠재적 인 사용을하고 있다고 가정 해 봅시다. 새로운 기능 (f2)을 포함시키고 싶습니다. 그러나 기능 모듈은 그렇게 할 수있는 옵션을 제공하지 않습니다. 내가 할 수있는 유일한 일은 v1을 v2로 복제하고이를 f2에서 사용하는 것입니다.

내가 근시안적 일지 모르지만, f2에 v1이 필요한 경우 f2를 구성하고 f1에 넣는 다른 구성 요소를 추가한다고 생각합니다. 왜냐하면 가능성이 높기 때문에 두 기능이 밀접하게 관련되어 있기 때문입니다. (동일한 노드 유형, 역할 등을 포함 할 수있는 동일한보기를 사용하기에 충분할만큼) (One big feature... 참조)

나는 궁금 해서요. 보기가있는 기능을 만든 다음 동일한보기를 사용하여 다른 기능을 사용해야합니다.

+0

f2가 f1에 의존 할 수없는 이유가 있습니까? – jhedstrom

+0

잘 모르겠지만 귀하의 질문을 이해하지만, 기능은 상호 배타적입니다 .... 기능이 다른 하나에 의존하는 경우, 나는 그것의 일부가 될 것이라고 생각합니다. – nymo

+0

어쩌면 당신은 당신의 흥미로운 드루팔 질문을 http://drupal.stackexchange.com/으로 옮겨달라고 중재자에게 요청할 수 있습니까? – Refineo

답변

0

가장 쉬운 해결책은 f2에서 f1까지 종속성을 추가하여 v1을 사용할 수 있는지 확인하는 것입니다. 뷰가 두 번 정의되고 피쳐가 순환 종속성을 생성하므로 f2에 v1을 추가 할 수 없습니다.

그렇지 않으면 재사용 가능한 구성 요소를 만들려면보기를 복제하여 동일한 기능에서 "모든 것이"필요하다는 것을 확인해야합니다.

+0

네, 복제가 제 경우에 들어가는 길일 것입니다. 기능에 대해 생성 된 새로운 역할에 대한 사용 권한을 설정하고 싶을 때 또 다른 충돌이 발생했습니다. 예를 들어 "액세스 관리 메뉴"가 이미 다른 기능에서 사용되었다는 것이 드러났습니다 ... 복제는 불행하게도 도움이되지 않습니다. – nymo

+0

@nymo 권한이 다른 기능에서 이미 내 보낸 경우에는 해당 기능이 strongarm 변수에 나타나서는 안됩니다. 모든 역할은 동일한 권한으로 정의됩니다. – Artusamak

+0

perms는 강력한 변수 목록에는 없지만 사용 권한에는 있습니다. – nymo