Kdyby/Events na Nette 2.1.1 bez Doctrine

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Jan Kotalík
Člen | 16
+
0
-

Zdravím,

snažím se používat Kdyby/Events a je to fakt pecka, ale navzdory tomu, že má být nezávislé na Kdyby/Doctrine, mi laděnka vyhazuje chybu, že nemůže najít interface.

https://www.dropbox.com/…scriber.html?dl=0

Nainstaloval jsem starší verzi na Nette 2.1.* pomocí composeru takto:

composer require kdyby/events:~2.1.1

A právě v tu chvíli vyhazuje chybu – Interface ‚Doctrine\Common\EventSubscriber‘ not found (laděnka je v html výše)

Instalace Doctrine pomůže, ale zase mi dělá problémy s nainstalovanou Nette/Database, a vzhledem k tomu, že v návodu autor píše, že je to na Doctrine zcela nezávislé, tak bych ji tam raději neměl.

Při instalaci mi to pak vyhazuje mimo těch úspěšných také následující hlášky, je možné, že s tím souvisí?

`Skipped installation of bin bin/doctrine-dbal for package doctrine/dbal: nam
e conflicts with an existing file
 – Installing doctrine/orm (2.4.x-dev 8bb1d54)
Cloning 8bb1d5448baf25e6ad0ed0627b7bd099e1738399

Skipped installation of bin bin/doctrine for package doctrine/orm: name conf
licts with an existing file
Skipped installation of bin bin/doctrine.php for package doctrine/orm: name
conflicts with an existing file
 – Installing kdyby/doctrine (v2.0.4)
Loading from cache`

Díky za rady.

David Matějka
Moderator | 6445
+
0
-

Proc mas kdyby/events ve vendor/others? smaz to a nainstaluj to pomoci composeru…

Jan Kotalík
Člen | 16
+
0
-

Pomocí composeru jsem to nainstaloval, ale ten to dal do vendor, kde to nenašel robot.

David Matějka
Moderator | 6445
+
0
-

composer by to nainstaloval do slozky vendor/kdyby/events, dle tracy to mas v vendor/others/kdyby/events

Michal Vyšinský
Člen | 608
+
+1
-

PipBoy napsal(a):

Pomocí composeru jsem to nainstaloval, ale ten to dal do vendor, kde to nenašel robot.

Stačí v index.php/bootstrap.php:

require 'vendor/autoload.php';
Filip Procházka
Moderator | 4668
+
0
-

@PipBoy Protože robotloader nemá načítat vendor/ složku, na tu generuje composer svůj autoloader.

A když načítáš soubory, vždy je načítej absolutně

require_once __DIR__ . '/../vendor/autoload.php';
Jan Kotalík
Člen | 16
+
0
-

Díky, pomohlo, jak se zdá, mám mezery v používání composeru :)