Объект класса Createproduct не может быть преобразован в строковую ошибку в yii

Я новичок в yii и работаю над созданием выпадающего меню. Я столкнулся с ошибкой, пожалуйста, предложите мне.. Вот его мой выпадающий код

    <?php
/* @var $this CreateproductController */
/* @var $model Createproduct */
/* @var $form CActiveForm */
?>

<div class="form">

<?php $form=$this->beginWidget('CActiveForm', array(
    'id'=>'createproduct-form',
    'method'=>'post',
    // Please note: When you enable ajax validation, make sure the corresponding
    // controller action is handling ajax validation correctly.
    // There is a call to performAjaxValidation() commented in generated controller code.
    // See class documentation of CActiveForm for details on this.E0E0E0 EFF0F2
    'enableAjaxValidation'=>false,
)); ?>

    <?php echo $form->errorSummary($model); ?>


    <div class="row" style="background-color: #F7F7F7; height:30px;">
        <?php echo $form->labelEx($model,'Product Type'); ?>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp
        <?php echo CHtml::dropDownList($model,'pr_name',$model->getTypeOptions() ); ?>
        <?php echo $form->error($model,'pr_type'); ?>
    </div>

    <div class="row buttons">
        <?php echo CHtml::submitButton($model->isNewRecord ? 'Create' : 'Save',array('class'=>'button1')); ?>
    </div>

<?php $this->endWidget(); ?>

</div>

метод getTypeOptions() имеет ниже и константу, используемую внутри этого метода и объявленную

const CAT_EMPTY=0;
const CAT_PHONE=1;
const CAT_ROUTERS=2;
const CAT_ACCESSORIES=3;
const CAT_SERVICES=4;

public function getTypeOptions()
{
    return array(
    self::CAT_EMPTY=>'Select_Category',
    self::CAT_PHONE=>'Phones',
    self::CAT_ROUTERS=>'Routers',
    self::CAT_ACCESSORIES=>'Accessories',
    self::CAT_SERVICES=>'Services',



    );
}

Помоги мне..

1 ответ

Проблема в использовании CHtml::dropDownListвы должны использовать так:

 <?php echo CHtml::dropDownList("model_name[pr_name]",'selected_value',$model->getTypeOptions() ); ?>

Кроме того, вы можете использовать $form виджет dropDownList функция

<?php echo $form->dropDownList($model, 'pr_name',$model->getTypeOptions() ); ?>
Другие вопросы по тегам