Minified verze a logování SQL v panelu
- ng9
- Člen | 7
Zdravím,
tak už nějaký ten den sleduji videa co tu jsou a pročítám dokumentaci a pomalu do toho pronikám, ale zatím opravdu jen pomalu :). Potřeboval bych poradit. Na stávající projekt jsem nahodil minified verzi, abych využil některé funkce nette. Spustil debugger, naskočil debug panel a zdá se vše funguje jak má. Dále jsem si vytvořil připojení k databázi a SQL dotazy se řádně provádí, co mi však nefunguje je, že se v panelu nezobrazuje seznam vykonaných SQL – jak na to?
V projektu to mám takto…
require_once "./nette/nette.min.php";
use
Nette\Diagnostics\Debugger,
Nette\Utils\Validators,
Nette\Utils\Strings,
Nette\Database\Connection,
Nette\Database\Diagnostics;
Debugger::enable();
$connection = new Connection("mysql:host=server;dbname=tabulka","user","password");
$connection -> table("tabulka")->limit(5000);
$connection -> query("SELECT * FROM tabulka LIMIT 1000");
Co mám udělat aby se tyto SQL dotazy zobrazily v panelu?
Mockrát děkuji.
- ng9
- Člen | 7
pilec napsal(a):
Nejjednoduší bude asi (netestováno):
Debugger::bar->addPanel(new \Nette\Database\Diagnostics\ConnectionPanel());
Díky za nasměrování, uvedený příklad přesně nefunguje, ale použil jsem následující:
Debugger::addPanel(new \Nette\Database\Diagnostics\ConnectionPanel);
Nyní v debug baru mám kolonku queries, ale problém je, že se provedené dotazy do toho baru nezachytí a stále jen zobrazuje nulu. Čím to? Jak to donutit aby se ty dotazy předávaly do debug baru?
Mockrát děkuji.
- ng9
- Člen | 7
Tak jsem našel prozatím toto řešení:
$connection = new Connection("mysql:host=server;dbname=database","user","password");
$panel = new \Nette\Database\Diagnostics\ConnectionPanel;
Debugger::addPanel($panel);
$q = $connection -> query("SELECT * FROM tabulka LIMIT 1000");
$panel -> logQuery($q);
$q = $connection -> query("SELECT * FROM tabulka2 LIMIT 1000");
$panel -> logQuery($q);
Napadá vás nějaké jednodušší řešení než za každým dotazem volat logquery? Zkoušel jsem upravit přímo funkci query(); aby volala logQuery, ale házelo to chybu, že onu funkci to nezná a nepodařilo se mi to rozpohybovat…
Používate někdo toto logování na vlastním projektu s minified verzí? Jak to řešíte?
Díky všem za jakékoliv postřehy.