Celkem tvrde prostredi.. je tam brouk?
- danik
- Člen | 56
Ahoj vespolek,
nasel jsem neco, co mi prijde mozna jako brouk, mozna jako zamerna funkce, ale kazdopadne me to zmatlo…
Na verzi 2.0.1 pro 5.2 s prefixy v sandboxovem kodu je v bootstrapu tohle:
<?php
// Configure application
$configurator = new NConfigurator;
// Enable Nette Debugger for error visualisation & logging
//$configurator->setProductionMode($configurator::AUTO);
$configurator->enableDebugger(dirname(__FILE__) . '/../log');
?>
To jsem si hned upravil odkomentovanim volani setProductionMode
a jako parametr jsem mu dal svou lokalni IP (server bezi ve VirtualBoxu na jine
IP). To mam vyzkousene, melo by to fungovat. A taky ze jo, pokud jde
o debugger – skutecne jede na ‚lokale‘ (cti: VBoxu) a kdyz to uploaduju
na server (hosting), tak dojede. Co ale nefunguje a ja myslim ze je to spatne je
vyber sekce v configu: na obou serverech se pouzije production
.
Prisel jsem na to (ha, objev!), ze to zpusobuje Configurator
–
v konstruktoru si nastavi vychozi parametry, mezi nimi
productionMode
a environment
(!) na zaklade detekce
produkcniho prostredi, tady jeste bez moznosti jakkoliv to ovlivnit. Pak nad nim
teprve volam setProductionMode('..')
s nejakou tou IP adresou a on
podle ni znovu vydedukuje productionMode
, ale uz ne
environment
– a pritom prave podle environment
se
v metode addConfig
nacita prislusna sekce configu.
Tak co, je to brouk? :o) docasnej pracujkolem by mel asi bejt volat
v bootstrapu mezi setProductionMode
a addConfig
metodu addParameters
a cpat do ni pole kterym ten
environment
prepisu… fuj. Trvaly reseni by asi bylo upravit
setProductionMode
tak, aby menila i environment
, ale
nevim nevim, jestli to je uplne cisty… jak na to? :o)
Editoval danik (10. 3. 2012 0:10)
- llook
- Člen | 407
Teď se to bere tak, že vývojové prostředí a vývojový režim jsou dvě různé věci. Viz https://forum.nette.org/…cnich-rezimu