public function actionView($id)
{
$criteria = new CDbCriteria();
$cat = ECCategory::model()->findAll();
foreach ($cat as $cats) {
if ($cats->ParentID == $id) {
$criteria->condition = 't.ParentID=' . $id; // that is if there are more category inside category show them
} else { // else display the products belonging to that category
$criteria->join = 'RIGHT JOIN ECProduct AS b ON t.ID = b.CategoryID';
$criteria->condition = 't.ID=' . $id;
}
}
$dataProvider = new CActiveDataProvider('ECCategory', array(
'criteria' => $criteria
));
$this->render(
'view', array(
'model' => $this->loadModel($id), 'dataProvider' => $dataProvider,
)
);
}
这不像我希望的那样有效。它忽略了IF语句并跳转到其他产生后者的结果。我怎么能写出这个条件,我有不同的方法可以做到这一点。拉取的数据将取决于条件,将满足一个或另一个条件。现在它的IF语句没有任何效果,除非我删除了第一部分永远不会到达的else部分。
由于