1.ProductController(Controller)
public function actionCreate()
{
$model=new Product;
// Uncomment the following line if AJAX validation is needed
// $this->performAjaxValidation($model);
if(isset($_POST['Product']))
{
$model->attributes=$_POST['Product'];
if($model->save())
$this->redirect(array(‘view’,'id’=>$model->id));
}
$category=Category::model()->findAll();
$this->render(‘create’,array(
’model’=>$model,
’category’=>$category,
));
}2.product.php(Model,主要语句)
public function relations()
{
// NOTE: you may need to adjust the relation name and the related
// class name for the relations automatically generated below.
return array(
’category’=>array(self::BELONGS_TO,’Category’,'category_id’),
);
}
/**
* @return array customized attribute labels (name=>label)
*/
public function attributeLabels()
{
return array(
’id’ => ‘ID’,
’name’ => ‘Name’,
’category_id’ => ‘Category’,
);
}3.create.php(视图文件,主要语句)
<?php echo $this->renderPartial(‘_form’, array(‘model’=>$model,’category’=>$category)); ?>
4._form.php
<div> <?php echo $form->labelEx($model,’category_id’); ?> <?php echo $form->dropDownlist($model,’category_id’,CHtml::listData($category,’id’,'name’)); ?> <?php echo $form->error($model,’category_id’); ?> </div>