В лейауте у меня строится главное меню которое не будет меняться нигде на сайте больше.
Но я не могу достать из бызы записи.
Помогите плиз.
Сделал вот что:
в Site Controller написал:
public $_model;
public function actionIndex()
{
$model=$this->loadSite();
$this->render('index',array('model'=>$this->loadsite()));
//$this->render('index');
}
public function loadsite($id=null)
{
if($this->_model===null)
{
if($id!==null || isset($_GET['id']))
$this->_model=site::model()->findbyPk($id!==null ? $id : $_GET['id']);
if($this->_model===null)
throw new CHttpException(404,'The requested page does not exist.');
}
return $this->_model;
}
в модели (…models/site.php) написал:
class site extends CActiveRecord
{
public static function model($className=__CLASS__)
{
return parent::model($className);
}
public function tableName()
{
return 'menu';
}
public function rules()
{
return array(
array('title', 'required'),
array('pid, hide', 'numerical', 'integerOnly'=>true),
);
}
как вы поняли пункты меню должны доставаться из таблички "menu"
Все работает - все круто!, Но это не совсем то что мне надо, мне надо циклом пройтись по всей таблице и взять все названия меню оттуда и вставить в этот виждет.
Как мне сформировать массив sites? если я немогу из лейаута в базу обратиться?