1

我正在 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);
}

选项表对同一问题有多个选项。但是通过上述方法,它只显示选项表中插入的最后一个选项,而不是显示同一问题的所有选项。那么如何显示同一问题的所有选项。请帮助我....

4

1 回答 1

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);
}
于 2012-12-07T10:39:02.063 回答