2013-02-27 1 views
1

У меня проблема с поиском Yii, который работает нормально при доступе к странице (учащиеся/администратор) напрямую, но если я renderPartial на той же странице с другой страницы (Students/reg), Yii фильтр не искать результат ..Поиск YII не работает, когда renderPartial с другой страницы

заранее спасибо

+0

В чем вопрос? – Stepo

+0

Yii поиск в CGridView не работает – sher

ответ

0

Вам необходимо создать модель вручную в actionRegStudentsController. Эти значения модели будут использоваться CGridView для установки фильтра.

Это может быть что-то вроде этого:

public function actionReg($id) { 
    $model = Students::model(); 
    $model->attributes = $_GET['Students']; 

    $this->render('reg', array(
      'model' => $model, 
     )); 
} 

Если у вас есть собственные значения в модели, вы должны установить их также, например

$model->calculatedAverage = $_GET['Students']['calculatedAverage']; 

Тогда в вашем RegView вы можете передать этот модель к таблице.

Чтобы понять, как это работает, попробуйте понять, что происходит в методе adminAction.

+0

Thnx Man, его работы для меня .. И мне нужно узнать больше .. thanx alot – sher

0

Если я получаю это право, renderPartial не обрабатывает инлайн JS, если вы не используете его правильно. Попробуйте сделать:

$this->renderPartial('view',array(...),false,true); 

Это должно помочь. Последний аргумент (true), сообщает Yii для обработки вывода.

+0

thx alot kapo, мой код для renderPartial, данный здесь .. Я использую это в CGridview .. отображение страницы, данные и другие функции работали хорошо. кроме поиска \t \t \t \t \t массив ('ID' => 'tab1', 'метка' => 'Управление', 'содержание' => $ this-> renderPartial ('// Студенты/админа', массив ('model' => $ model,), true), 'active' => true,), – sher

+0

Я не могу понять, где вы используете этот массив ('id' => ...). В контроллере? Я не могу вам помочь, не видя некоторый больший кусок кода – apoq

+0

$ закладок = массив (\t \t \t \t \t массива ('ID' => 'tab1', 'метка' => 'Управление', 'содержания' => $ this-> renderPartial ('// Students/admin', array ('model' => $ model,), true, true), 'active' => true,), array ('id' => 'tab4 ',' label '=>' Добавить учеников ',' content '=> $ this-> renderPartial (' create ', array (' model '=> $ model,' medicalinfo '=> $ medicalinfo,' parent '=> $ parent, 'royalty' => $ royalty, 'workheet' => $ worksheet), true)), \t array ('id' => 'tab3', 'label' => '2012', 'content' = > $ this-> renderPartial ('adminold', array ('model' => $ model1,), true)),); $ this-> виджет (массив 'bootstrap.widgets.TbTabs', ( 'типа' => 'таблетки', \t => 'вкладки' Ид ', 'вкладки'=> $ язычки, – sher