Symfony не может найти мою модель (Доктрина) - PullRequest
1 голос
/ 22 декабря 2010

Я получаю эту ошибку при попытке использования модели: фатальная ошибка: вызов функции-члена getSubMenu () для необъекта в /workcedric2/bambinbazar/apps/frontend/modules/categories/actions/components.class.php в строке 25

Я попытался очистить кэш с помощью symfony cc и перестроить модель ... нет.

Компонент:

  public function executeSubmenu(sfWebRequest $request)
  { 
   $currentCatId = $this->getVar('currentCatId');
   $currentId = $this->getVar('currentId');
   $this->subCategories = $this->bambinbazar_category->getSubMenu($currentCatId);
}

Модель вфайл BambinbazarCategory.class.php:

  public function getSubMenu($currentCatId)
  {
    $q = Doctrine_Core::getTable('BambinbazarCategory')->createQuery('tree')
    ->where('tree.parent_id = ?', $currentCatId )
    ->addOrderBy('tree.parent_id ASC')
    ->addOrderBy('tree.lft ASC')
    ->execute();
   return $q;
 }

1 Ответ

2 голосов
/ 22 декабря 2010

Ну, по-видимому, ваш $this->bambinbazar_category является нулем или не объектом.

executeSubmenu не устанавливает эту переменную, возможно, она установлена ​​где-то снаружи, поэтому проверьте код, который ее устанавливает, и убедитесь, что она не равна нулю.

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

if (is_object($this->bambinbazar_category)) {
     $this->subCategories = $this->bambinbazar_category->getSubMenu($currentCatId);
} else {
    $this->subcategories = array();
}
...