2010-12-06 5 views
0

심포니 1.4 교리 저장하지 않습니다양식 내가 믹스 양식 내에서 똥개 양식을 내장 한

$this->embedRelation('Mutt'); 
$form = new MuttForm(null, array(
    'mix' =>$this->getObject(), 
)); 
$this->embedForm('Mutt', $form); 
$this->widgetSchema['Mutt'] = $form->getWidgetSchema(); 
$this->widgetSchema['Mutt']['mix_id'] = new sfWidgetFormInputHidden(); 
$this->validatorSchema['Mutt'] = $form->getValidatorSchema(); 

을 나는 믹스 테이블 새로 만든 아이디 양식이 필요합니다 Mutt 테이블의 mix_id 필드를 채 웁니다.

<?php echo $form->renderHiddenFields();?> 
<?php echo $form['name']->renderRow();?> 
<?php echo $form['parent1']->renderRow();?> 
<?php echo $form['parent2']->renderRow();?> 
<?php echo $form['parent3']->renderRow();?> 
<?php echo $form['parent4']->renderRow();?> 
<?php echo $form['parent5']->renderRow();?> 
<?php echo $form['Mutt']['creator']->renderRow();?> 
<?php echo $form['Mutt']['email']->renderRow();?> 
<?php echo $form['Mutt']['website']->renderRow();?> 
<?php echo $form['Mutt']['caption']->renderRow();?> 
<?php echo $form['Mutt']['photo']->renderRow();?> 
<?php echo $form['Mutt']['copyright']->renderRow();?> 
<?php echo $form['Mutt']->renderHiddenFields();?> 

여기

public function executeEdit(sfWebRequest $request) 
    { 
    $this->form = new MixForm(); 
    if($request->isMethod('post')): 
     $this->form->bind($request->getParameter('mix'), $request->getFiles($this->form->getName())); 
     if($this->form->isValid()): 
      $this->form->save(); 
      $this->redirect('pure/add'); 
     endif; 
    endif; 
    } 

양식 유효성 검사가 제대로 작동 actions.class.php 모듈/혼합/액션 내 액션 /이지만, 두 데이터베이스에 저장하지 않습니다. 내가 뭘 잘못하고있어 ??

답변

0

executeEdit에 대한 작업을 정의하고 있지만 processForm은 양식 유효성 검사와 데이터베이스에 저장하는 작업입니다. executeEdit은 기존 작업을 편집 할 때 양식을 표시하기위한 작업입니다. 참조 : http://www.symfony-project.org/jobeet/1_4/Doctrine/en/10#chapter_10_sub_the_form_action

+0

나는 다른 양식을 추가하기 전에 작업을 통합했으며 양식을 저장하는 데 문제가 없습니다. 필자가 한 것은 $ request-> getFiles ($ this-> form-> getName())를 추가하여 임베디드 폼에 파일 업로드 구성 요소가 있기 때문에 바인드했습니다. – Lauren

+0

파일 업로드 구성 요소가있는 경우 여러 양식에서 작동하지 않으므로 다른 방법을 사용할 때입니다. http://www.symfony-project.org/more-with-symfony/1_4/en/06-Advanced-Forms에 양식을 적절히 임베드하는 방법에 대한 심층적 인 연구가 진행 중입니다. sfForm 또는 sfFormDoctrine을 임베드하기 위해 심층적으로 들어갑니다. 사물. – coltraneofmars