Jak zprovoznit texylu v nette 3
- Bazylek
- Člen | 22
Dobrý den,
pokouším se zprovoznit Texylu v Nette 3 na localhost (xampp PHP 7.4.4). Texy mi funguje dobře. Největší problém mám s Webloaderem, jelikož jsem nikde nenašel možnost instalace přes composer, tak jsem WebLoader nakopíroval do root.
common.neon
webloader: WebLoader\Nette\Extension
Tracy:
Extension ‚WebLoader\Nette\Extension‘ not found or is not
Nette\DI\CompilerExtension descendant.
Popřípadě existuje nějaká jiná alternativa místo texyly.
Děkuji za každou radu.
- CZechBoY
- Člen | 3608
webloader nainstaluješ přes
composer require janmarek/webloader
.
Kdyby tě zajmalo jak to zjistit tak viz composer.json v repozitáři https://github.com/…omposer.json
Nicméně nejsem si jist, že webloader je kompatibilní s Nette 3.
Editoval CZechBoY (26. 4. 2020 14:40)
- Bazylek
- Člen | 22
Děkuji za rychlou odpověď. Vyzkoušel jsem, bohužel neprošel, není optimalizovaný pro verzi nette 3
C:\>cd c:\dropbox\website\web
c:\Dropbox\website\web>composer require janmarek/webloader
Using version ^2.5 for janmarek/webloader
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Installation request for janmarek/webloader ^2.5 -> satisfiable by janmarek/webloader[v2.5.0].
- janmarek/webloader v2.5.0 requires nette/application ~2.3@dev -> satisfiable by nette/application[v2.3.0, v2.3.1, v2.3.10, v2.3.11, v2.3.12, v2.3.13, v2.3.2, v2.3.3, v2.3.4, v2.3.5, v2.3.6, v2.3.7, v2.3.8, v2.3.9, v2.3.x-dev, v2.4.0, v2.4.1, v2.4.10, v2.4.11, v2.4.12, v2.4.13, v2.4.14, v2.4.2, v2.4.3, v2.4.4, v2.4.5, v2.4.6, v2.4.7, v2.4.8, v2.4.9, v2.4.x-dev] but these conflict with your requirements or minimum-stability.
Installation failed, reverting ./composer.json to its original content.
Napadlo mě, že bych složku s webloaderm přesunul do App a v bootstrapu přidal:
class Bootstrap
{
public static function boot(): Configurator
{
$configurator = new Configurator;
$configurator->setDebugMode(true); // enable for your remote IP
//$configurator->setDebugMode('23.75.345.200'); // enable for your remote IP
$configurator->enableTracy(__DIR__ . '/../log');
$configurator->setTimeZone('Europe/Prague');
$configurator->setTempDirectory(__DIR__ . '/../temp');
$configurator->createRobotLoader()
->addDirectory(__DIR__)
->register();
$configurator
->addConfig(__DIR__ . '/config/common.neon')
->addConfig(__DIR__ . '/config/local.neon');
$container = $configurator->createContainer();
$application = $container->getByType(WebLoader\Nette\Extension::class);
return $configurator;
}
public static function bootForTests(): Configurator
{
$configurator = self::boot();
\Tester\Environment::setup();
return $configurator;
}
}
Pak postupně odstranit chyby. Myslím si, že toto řešení není vhodné.
Editoval Bazylek (26. 4. 2020 18:08)
- Bazylek
- Člen | 22
Mám ještě jeden problém, když jsem nastvil bootstrap a common, tak vyskakuje tot:
Name 'webloader' is already used or reserved.
Přes composer jsem instaloval jen :
composer require joseki/webloader-filters
a
composer require bicisteadm/webloader-reload
Může být problém v joseki, nebo mám hledat někde jinde.
Děkuji
- David Matějka
- Moderator | 6445
nemas tu extension nainstalovanou 2x? mozna te zmatlo, ze je v readme „For older versions of Nette, you have to register the extension in app/bootstrap.php:“ … coz ale neplati, pokud ji registrujes do config.neon
- Bazylek
- Člen | 22
Moc děkuji Davide, byla tam 2×. Když jsem smazal v bootstrapu
$container = $configurator->createContainer();
$application = $container->getByType(WebLoader\Nette\Extension::class);
tak už vše proběhlo v pořádku. Máš pravdu postupoval jsem podle
readme, ale toto mě nenapadlo.
Děkuji
Editoval Bazylek (27. 4. 2020 10:00)