2010-08-02 2 views
0

Migating는 CakePHP의에서 드루팔, 기능 질문에

내가 드루팔을 사용하는 회사의 웹 사이트를 변환, 또는 적어도 그가 될 것 있는지 확인하기 위해 노력하고있어 (내가 너무 BTW 드루팔 포럼이 게시 한) 앞으로 나아갈 수있는 최선의 방법. PHP 개발에 대한 배경 지식이 있고 현재 CakePHP 프레임웍을 사용하고 있습니다. 필자는이 사이트 (내 디자인이 아님)를 구축했으며 Drupal을 사용하여 대부분의 기능을 복제하는 방법을 볼 수 있습니다. 대부분 CCK 모듈을 사용합니다.

http://preview.tinyurl.com/yk6u8mt

은 홈페이지에서 볼 수 있듯이 :

  1. 사용자는 국가를 선택합니다.
  2. 국가는 ajax 호출을 사용하여 '국가 별'네트워크 범위에 가장 적합한 전화를 결정하는 스크립트로 전달됩니다.
  3. div는 방문자에게 해당 국가에서 가장 적합한 전화를 추천하는 것으로 표시됩니다. 내가 드루팔 이것에 대해 이동하는 방법을 궁금하네요

, 나는 확실히 해요 단계 가이드에 의해 단계 후, 난 그냥 이런 종류의 드루팔 가능합니다 알고 싶어하지, 어떤 방법을 사용하는 .

훌륭한 사람이라면 도움이 될 것입니다. 감사.

답변

1

좋아요, 그러면 폼이 표시되는 hook_menu에서 정의하는 경로가 있습니다. 그렇지 않으면 노드에서 웹 폼으로 설정되어 작동 할 수도 있습니다.

어쨌든, 귀하의 양식에 AHAH를 사용하려고합니다. http://api.drupal.org/api/drupal/developer--topics--forms_api_reference.html/6#ahahhttp://drupal.org/node/348475을 확인하십시오.

기본적으로 hook_menu에 MENU_CALLBACK 유형의 다른 경로를 정의하고 국가를 입력으로 받아서 화면에 표시 할 div를 반환합니다.

유용 할 수도있는 AHAH의 핵심적인 예는 비밀번호를 입력하는 곳이며 비밀번호가 안전한지 여부를 알 수 있습니다. 체크 아웃하십시오.

편집 : http://drupal.org/project/examples에도 좋은 예가 있습니다.

+0

이것은 재미있을 것 같고, 문서를 파고 들여다 볼 수 있는지를 알아야한다. 감사 ;) –

1

CCK 및보기를 사용합니다. 보기에 대한 필터를 설정할 수 있습니다. 필터가 작동하지 않으면 PHP 코드를 포함 할 수 있습니다. 또한 뷰의 헤더에 jquery 코드를 추가하여 텍스트 상자에 입력 한 내용으로 내보기를 필터링 할 수있었습니다.

0

Drupal을 사용하는 CakePHP에서 오는 것은 개발자를위한 고통입니다.

응용 프로그램 구조가 확장 성을 쉽게하기 위해 설계되었을 수 있지만 이는 사용자 자신의 플러그인과 테마를 사용할 수있는 시스템이 있다는 것을 의미합니다.

모듈은 기본적으로 M + C 부분이지만 테마는 MVC 응용 프로그램의 V 부분입니다. 문제는이 분리가 Drupal에서 매우 엄격하지 않다는 것입니다. 사실 일을 처리하기 위해 때때로 깨뜨려야합니다 (예 : theme_mymodule_myfunction()을 모듈에 기본 출력으로 포함시켜야합니다. mytheme_mymodule_myfunction()을 사용하여 테마) 그리고 클래스 검색을 귀찮게하지 마십시오 (http://drupal.org/node/547518 참조).

또한 모듈에서 테마로 연결되는 실제 링크가 없습니다. 많은 경우에 문제없이 모듈과 테마를 별도로 전환 할 수 있으므로 좋은 방법입니다. CakePHP (또는 다른 프레임 워크)에서 제공되는 응용 프로그램 빌더의 경우 "건전성"이 부족하다는 느낌을 자주받습니다. 기본 소프트웨어 용 부품을 만들고 단점을 갖고 살아야합니다.

이 단계는 권장하지 않습니다. 드루팔 (Drupal은 웹 사이트를 관리해야하고 몇 가지 모듈을 추가하여 필요한 가치 (이미지 갤러리 등)를 추가 할 수 있지만 맞춤형 웹 앱의 기반으로 권장하지는 않습니다.

+0

나는 stefan으로부터 온다는 것을 충분히 이해하고 있지만, 현재 이점은 단점을 능가한다. –