Я работаю над проектом Symfony для управления базой данных.Сначала я объясню, как это работает:
В базе данных все элементы связаны с уникальным элементом 'scene'.Когда пользователь получает доступ к приложению, выбирает, какую сцену он хочет видеть (это сохраняется в параметре пользователя).Поэтому при перечислении элементов приложение должно перечислять только элементы, связанные со сценой, выбранной пользователем.
* Примечание: все элементы имеют атрибут сцены в определении таблицы.
Так что моя проблема возникаетздесь:
Я разработал список сущностей элементов, используя для разбивки на страницы класс sfPropelPager.Также добавлены некоторые фильтры для поиска в списке, и для этого я использовал систему фильтров, предоставленную Symfony (<element>FormFilter.class.php
и прочее).
Теперь я хочу, чтобы в списке не отображались элементы из других сцен, кроме выбранных пользователем.
Как я могу добавить дополнительные критерии к критериям, заданным классом фильтра?или Как бы вы решили проблему?
вот мой код действия:
public function executeUnidadfilter(sfWebRequest $request){
$this->filter = new BaUnidadorganizativaTblFormFilter();
$c = $this->filter->getCriteria();
$this->filter->bind($request->getParameter($this->filter->getName()));
if($this->filter->isValid()){
$this->pager = new sfPropelPager('BaUnidadorganizativaTbl',$this->sfPropelPagerLines);
echo $this->getUser()->getEscenario();
$this->pager->setCriteria($c);
$this->pager->init();
}else{
$this->pager = new sfPropelPager('BaUnidadorganizativaTbl',$this->sfPropelPagerLines);
$this->pager->init();
}
$this->setTemplate('Unidadlist');
}
* Примечание: «сцена», упомянутая ниже, - это Escenario в коде
спасибоочень за ваше время