Call to a member function findAll() on null ale na Homepage to chybu nevyhadzuje
- SontoEremo
- Člen | 341
Zdravím ľudia takže znova…
Tahám menu cez databázu všetko to mám z môjho
starého príspevku pridám do tabuľky záznam čiže vyplním (title,
link, icon) a uložím parent_id nechávam prázdny keďže nechcem aby menu
obsahovalo submenu…
Homepage stránka sa zobrazí dobre aj menu ukáže ale akonáhle chcem
kliknúť na to pridané menu vyskočí na mňa stránka s chybou
Fatal Error
Call to a member function findAll() on null search►
Source file
File: ...\module\WebadminModule\presenters\BasePresenter.php:16
6:
7: abstract class BasePresenter extends CommandPresenter {
8: /** @var MenuRepository */
9: public $menuRepository;
10:
11: public function __construct(MenuRepository $menuRepository) {
12: $this->menuRepository = $menuRepository;
13: }
14:
15: public function beforeRender() {
16: $selectMenu = $this->menuRepository->findAll()->where('parent_id IS NULL')->order('parent_id');
17: $this->template->WebadminMenus = $selectMenu;
18: }
19: }
Nechápem to akonáhle pridám submenu tak už sa stránka zobrazí…
Môj BasePresenter
<?php
namespace App\WebadminModule\Presenters;
use Nette;
use App\Presenters\CommandPresenter;
use App\WebadminModule\Repositoris\MenuRepository;
abstract class BasePresenter extends CommandPresenter {
/** @var MenuRepository */
public $menuRepository;
public function __construct(MenuRepository $menuRepository) {
$this->menuRepository = $menuRepository;
}
public function beforeRender() {
$selectMenu = $this->menuRepository->findAll()->where('parent_id IS NULL')->order('parent_id');
$this->template->WebadminMenus = $selectMenu;
}
}
P.S: skúšal som render, beforeRender, startUp, renderDefault ale ani za boha nezobrazí nič len chybu
- David Matějka
- Moderator | 6445
Asi v nekterem konkretnim presenteru prekryvas konstruktor a nevolas rodicovsky konstruktor base presenteru. ale predavani zavislosti do base presenteru neni vhodne, vznikne dependency hell. Pouzij radeji @inject anotaci