2013-06-25 4 views
0

나는이 image 쇼와 같은 관리 인터페이스를 구축해야합니다. 과거에는 그 목적을 위해 구성 요소를 사용했지만, 모듈은 물결 무늬가 생성 되었기 때문에 admin-generator이 작업을 수행하는 방법을 모르겠습니다. 이 모든 문서를 확인하려면 1, 2, 3을 수행하는 방법에 대한 단서가 필요하지 않습니다. 또한 modules/sdriving_empresa/actions 폴더 아래에 components.class.php을 생성하고 뷰 include_component('sdriving_empresa')의 구성 요소를 포함하지만이 오류를 얻을 :admin-generator 모듈에서 구성 요소를 사용하는 것이 가능합니까? 방법?

sfComponents initialization failed.

어떤 도움을?

+0

include_component ('sdriving_empresa', 'actionName') 어쩌면? –

+0

어떤 구성 요소입니까? – Reynier

+0

원하는 것을 잘 만드십시오! Ixark 대답을 참조하십시오, 그것은 기본적으로 내 것보다 같습니다. –

답변

1

탭 및 파셜, 쉬운 방법 : 그 목적에 가장 적합한 자바 스크립트의

하나 Javascript Tabifier입니다. 그것의 쉬운 그것으로 설치하고 놀 수 있습니다. 다른 Javascript 및 jQuery Tabbers를 많이 발견 할 것이며 가장 좋아하는 탭을 얻으십시오.

나는 쉽게 작업을 수행하기 위해 symfony 1 partials에 대해 모든 것을 배우라고 조언합니다. 보통 partial은 외부 파일에 저장되는 코드 조각으로 나중에 코드의 어느 부분에도로드됩니다. html과 PHP 코드가 많은 변수와 비슷합니다. Partials (외부 파일)는 또한 입력 변수를받을 수 있으므로 관련 모듈이나 테이블에서 쉽게 해당 ID를 보낼 수 있습니다.

는 설정을

$sModuleName = sfContext::getInstance()->getModuleName(); 
$sbasepathtabs = $sModuleName . '/tabs'; 
<div class='tabber' id='tabberglobal1'> 
    <div class='tabbertab' title='Information' > 
     <?php 
      include_partial($sbasepathtabs . '/_information/_information', array('form' => $form)); 
     ?> 
    </div> 

    <div class="tabbertab" title="Admin" > 
    <?php 
     include_partial($sbasepathtabs . '/_admin/_admin', array('form' => $form)); 
    ?> 
    </div> 
</div> 

쉽게 두 개의 탭, 정보 및 관리자 및 두 개의 부분 지문

와 Tabifier과 예제를 editSuccess.php을 볼 수 있습니다 :

  1. 모듈 템플릿 폴더 안에 접기를 만듭니다. 어 : 폴더 내부 /_tabs
  2. /_tabs 폴더를 만들 부분 파일 생성 폴더/_tabs/_information 내부 /_information/_admin
  3. : 폴더/_tabs 내부 _information.php
  4. 를/_admin은 파일을 부분 생성합니다 : _admin.php

각 파일 내에서 partials는 원하는 것을 쓸 수 있습니다.
이러한 부분은 왼쪽 변수 형식 인 array ('form'=> $ form)을 받게됩니다.
당신은 파셜에 두 개 이상의 변수를 보낼 수 있습니다 : 배열 ('양식'=> $ 양식 '변수 2'=> $ formnumber2를)

이 부분, 예 부분 _information을 쓸 때, 당신이 할 수있는

$id = $form->getObject()->getId(); 

일반 변수의 경우 getObject를 호출 할 필요가 없습니다.

마지막으로 symfony partials 및 Javascript Tabifier의 두 문서를 자세히 살펴보십시오. 그들은 당신에게 필요한 모든 것을 해결할 것입니다.

백엔드 관리 생성기 :

관리 발생기 자동으로 캐시 폴더에있는 모든 템플릿을 생성합니다. 예 :

cache\backend\prod\modules\autoTbPrueba1Backend\templates 
cache\backend\prod\modules\autoTbPrueba1Backend\templates\indexSuccess.php 

대부분의 파일은 이미 부분 파일이므로 이름에 _ 기호가있는 파일에주의하십시오. 이것은 대부분의 작업이 이미 완료되었음을 의미합니다. 일부 작업 (TbPrueba1Backend/list_header는 _list_header.php 파일) 또는 전체 템플릿 (indexSuccess.php)을 재정의하는 것입니다.)에 필요한 확장 정보를 제공하십시오.

apps\backend\modules\TbPrueba1Backend\templates 
apps\backend\modules\TbPrueba1Backend\templates\indexSuccess.php 

이 필요한 추가 정보를 설정하고 당신이 해달라고하면 웹을 새로 고치는 동안 새로운 것을 참조 : 백엔드 생성 된 템플릿과 파셜를 대체하기 위해, 당신은 당신의 모듈의 템플릿 폴더에 해당 파일을 복사 할 수 있습니다에서 , symfony 캐시를 지우는 것을 잊지 마십시오 (symfony cc).

일단 템플릿과 부분을 새 정보로 덮어 쓰면 이제는 위에서 설명한대로 부트 스트랩 프레임 워크에서 만든 div 탭에 해당 부분을 쓰거나 추가해야합니다.
Symfony 1.4 change admin generator actions or templates
http://www.slideshare.net/loalf/symfony-y-admin-generator
http://symfony.com/legacy/doc/jobeet/1_4/en/12?orm=Doctrine

+0

좋은 설명이지만 나에게 쓸모없는 이유는 무엇입니까? 나는'doctrine : generate-admin' 태스크 모듈을 주로 사용하기 때문에. 나는 모듈을 생성하기 위해이 작업을 사용하고 있는데,이 경우 부분적인 방법이 거기에 어떻게 들어갈 것인가? 내가 CSS 프레임 워크로 트위터 부트 스트랩을 사용하고 있기 때문에 나는 탭을 사용하고 있는데, 그것들을 잘 알고 있기 때문에 문제가되지 않는다. – Reynier

+0

관리자 생성기에 대한 정보를 어떻게 추가했는지, 템플릿을 덮어 쓰고 div 탭에 추가하는 방법에 대한 정보를 추가했다. 부트 스트랩의 – xtrm

0

당신은 당신의 include_component에서 모듈 이름과 componentName 필요()

function include_component($moduleName, $componentName, $vars = array()) 
{ 
    echo get_component($moduleName, $componentName, $vars); 
} 

아니면 당신을 : 관리자 발생기의 좋은 설명은

모듈이 잘못된 응용 프로그램에 있습니다. 이 경우 플러그인으로 이동하는 것이 좋습니다