저는 전자 상거래 프로젝트를위한 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.
규칙은 모델이어야합니다. 기본적으로 MVC 프레임 워크에서 기본 MVC 원칙을 사용하지 않는 것 같아서 Yii 기본 사항을 먼저 읽는 것이 좋습니다. – adamors
[Form Builder] (http://www.yiiframework.com/doc/guide/1.1/en/form.builder) –
@ Örs를 사용하여 모델 클래스에서 규칙을 정의했습니다. $ 규칙은 모듈성을 위해 데이터베이스에 저장하는 일부 양식 값입니다. 나는 그들을 구현할 것이다. 붙여 넣은 코드는 내 견해 (_form.php) – tokiyashi