2012-07-11 3 views
0

저는 전자 상거래 프로젝트를위한 yii 프레임 워크를 배우고 있습니다. 나는 부동산에 대한 추가 양식을 가지고 있으며 그 양식은 데이터베이스를 사용하여 생성됩니다. 아래의 코드는 폼 (/보기/광고/_form) 및 입력 필드주는 이름을 생성 상세히 [ "광고 제목"], 세부 [ "광고 이미지"] 등과 같은배열 입력 규칙 설정 - Yii Framework

<?php 
    $connection = Yii::app()->db; 
    $command = $connection->createCommand("SELECT * FROM eml_ozellikler"); 
    $options = $command->queryAll(); 
    $command = $connection->createCommand("SELECT * FROM eml_kurallar"); 
    $rules = $command->queryAll(); 
    $i = 0; 
    foreach($options as $option){ 
     echo '<div class="row">'; 
     echo $form->labelEx($model, 'detail["'.$option['name'].'"]'); 
     switch($option['tur']){ 
      case "textfield": 
       echo $form->textField($model, 'detail["'.$option['name'].'"]'); 
       break; 
      case "textarea": 
       echo $form->textArea($model, 'detail["'.$option['name'].'"]', array('rows'=>'5','cols'=>'40')); 
       break; 
      case "integer": 
       echo $form->textField($model, 'detail["'.$option['name'].'"]'); 
       break; 
      case "selectbox": 
       CHtml::dropDownList($option['label'], 'detail["'.$option['name'].'"]', $rules[$i]['values']); 
       break; 
      case "radio": 
       break; 
      case "file": 
       echo $form->fileField($model, 'detail["'.$option['name'].'"]'); 
       break; 
      case "image": 
       break; 
     } 
     echo $form->error($model,'detail["'.$option['name'].'"]'); 
     echo '</div>'; 
     $i++; 
    } 
?> 

문제는 그들에게 규칙을 줄 때입니다. 내가이

array('detay["ad-title"]', 'required'), 

다음 규칙을 추가 할 때 규칙, 그냥보고를 위해 노력하고, 해당 필드는 요구하는 경우와 (*) 점점. 그러나 양식을 제출하면 "Ad.detail ["ad-title "]"값이 정의되어 있지 않다는 오류가 발생합니다. 규칙없이

, 내가 게시하고 제대로 $ _POST [ '광고'] [ '세부'] [ '광고 제목 "] 등 또한

를 사용하여 게시 된 값을 얻을 수 있습니다; 나는 Yii Framework 문서를 확인했지만 표 형식의 입력 및 양식 작성기를 제외한 유용한 항목을 찾을 수 없었으며이를 내 코드에 구현할 수 없었습니다. 내 모델에서 변수를 생성하고 싶지 않기 때문에 단지 하나의 변수와 규칙을 사용하여 데이터를 보내려고합니다.

고마워, çağlar.

+0

규칙은 모델이어야합니다. 기본적으로 MVC 프레임 워크에서 기본 MVC 원칙을 사용하지 않는 것 같아서 Yii 기본 사항을 먼저 읽는 것이 좋습니다. – adamors

+0

[Form Builder] (http://www.yiiframework.com/doc/guide/1.1/en/form.builder) –

+0

@ Örs를 사용하여 모델 클래스에서 규칙을 정의했습니다. $ 규칙은 모듈성을 위해 데이터베이스에 저장하는 일부 양식 값입니다. 나는 그들을 구현할 것이다. 붙여 넣은 코드는 내 견해 (_form.php) – tokiyashi

답변

0

당신이주는 것과 관련하여 어떤 규칙도 발견되지 않았습니다.

array('detay["ad-title"]', 'required'), 

ad-title이 (가) 테이블 필드 이름 인 경우 작성하실 수 있습니다.

그것 뿐이다

array('ad-title', 'required'), 

은 ... 그렇지 않으면 아래 당신이 배울 수있는 링크의 하나이며, 규칙을 배울 필요가있다.

http://www.yiiframework.com/wiki/56/

감사합니다.