2012-08-13 3 views
0

저는 ZendFramework 1.11과 Zfdatagrid 0.8을 사용하고 있습니다.Zfdatagrid 0.8 CRUD 양식에 요소 추가

나는 자신의 db-model을 소스로 사용하여 그리드와 CRUD 폼을 만들었습니다. 그런 다음 CRUD 양식에 다음과 같은 몇 가지 추가 요소를 추가했습니다.

$ element = new Zend_Form_Element ('element', array ('label'=> '새 요소 :'))); $ grid-> getForm (1) -> addElement ($ element);

새 요소가 양식에 제대로 추가되지만 다른 모든 양식 요소는 표 안에 있지만 추가 된 요소는 실제 양식 위에 목록 요소로 배치됩니다. 대신이 폼의 적절한 모양을 얻기 위해 테이블의 일부로 추가 된 요소를 갖고 싶습니다. 전에이 문제에 직면 한 사람이 있습니까? 또는 어떻게해야 할 지 아이디어가 있습니까? 어떤 도움을 주셔서 감사합니다!

미리 감사드립니다.

답변

1
$elementDecorators = array(
      'ViewHelper', 
      'Errors', 
      array(array('data' => 'HtmlTag'), array('tag' => 'td', 'class' => 'element')), 
      array('Label', array('tag' => 'td', 'class' => 'form_label')), 
      array(array('row' => 'HtmlTag'), array('tag' => 'tr')), 
     ); 

$this->_grid->getForm(1)->addElement('select', 'group', array(
      'required' => true, 
      'value' => 'rtrt', 
      'label' => 'Group', 
      'multiOptions' => $list_contactgroup, 
      'order' => 5, 'decorators' => $elementDecorators 
     )); 
+0

문서화되지 않은 코드를 게시하는 대신 수행중인 작업과이 코드가 도움이되는 이유를 설명해야합니다. – Sam

+0

제출해 주셔서 감사합니다. 나는 이미 과거에 데코레이터를 설정하려고 시도했지만 어떤 시점에서는 실패했다. 이제 데코레이터를 정의하고 다음과 같이 원하는 요소에 데코레이터를 설정했다. $ element-> setDecorators ($ elementDecorators); 나는 이것이 좋은 해결책인지는 모르지만 그것은 매우 간단하고 적어도 나를 위해 일한다;) Thx 다시 당신의 도움을 위해! – user1595158