我在yii + extjs中创建项目。我有pollid和pollQuestion的民意调查表。选项表有pollid和选项。现在在发布问题期间,我正在从选项表中检索民意调查表中的问题和该问题的选项。并以json_encoded格式发送此数据。我把设计作为 -
public function actionCreate()
{
$model=new poll();
$model->pollId=4;
$record1=poll::model()->findByPk($model->pollId);
//$data = $record1->getAttributes();
$data= $record1->getAttributes(array('pollId','pollQuestion'));
foreach ($record1->polloptions as $option)
{
$data = array_merge($data, $option->with('pollId')- >getAttributes());
}
//echo $data;
echo CJSON::encode($data);
}
选项表针对同一问题有多个选项。但是通过上面的方法,它只显示插入选项表中的最后一个选项,而不是显示相同问题的所有选项。那么如何显示同一问题的所有选项。请帮助我....
答案 0 :(得分:0)
可能你可以试试:
public function actionCreate()
{
$model=new poll();
$model->pollId=4;
$record1=poll::model()->findByPk($model->pollId);
//$data = $record1->getAttributes();
$data= $record1->getAttributes(array('pollId','pollQuestion'));
foreach ($record1->polloptions as $option)
{
$optionArray = $option->getAttributes()
//if the 2 arrays havn't the same indexes
//this way u keep the key indexes
$data = $data + $optionArray;
//if the 2 arrays could have the same indexes
$data = array_push($data, $optionArray);
}
//echo $data;
echo CJSON::encode($data);
}