Ciao a tutti,
dopo qualche mese… vorrei riprendere con yii
in particolare sto cercando di modificare applicazione di demo "Blog"
Quello che volevo fare e aggiungere un categoria al post che vado a creare
Pertanto, ho aggiunto un campo "category_id" alla tabella post, ho creato una tabella "category" con id e name.
poi dopo aver creato model e crud di category nel form che crea il post ho aggiunto una combo:
...
<?php
$data = CHtml::listData(Category::model()->findAllBySql(
'SELECT * from tbl_category'), 'id', 'name');
echo $form->dropDownList(
Category::model(), 'id',
$data, array('empty' => Yii::t('fim', 'Search All')));
....
?>
ora nel PostController che riceve i dati e li salva quindiin actionCreate()
ho fatto questo
ho modificato il controller da così
public function actionCreate()
{
$model=new Post;
if(isset($_POST['Post']))
{
$model->attributes=$_POST['Post'];
if($model->save())
$this->redirect(array('view','id'=>$model->id));
}
$this->render('create',array(
'model'=>$model,
));
}
a così:
public function actionCreate()
{
$model=new Post;
$modelCategory=new Category;
if(isset($_POST['Post']))
{
$model->attributes=$_POST['Post'];
$modelCategory->attributes=$_POST['Category'];
echo "<pre>";
echo var_dump($model->attributes) . "<HR>";
echo var_dump($modelCategory->attributes). "<HR>";
if($model->save())
$this->redirect(array('view','id'=>$model->id));
}
$this->render('create',array(
'model'=>$model,
));
}
ma naturalmente questo è vuoto
echo var_dump($modelCategory->attributes). "<HR>";
come faccio ricevere e memorizzare i dati?
dove sbaglio?
buona giornata!
giuseppe