Registrace helperu a jeho umístění

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

Dobrý den,

potřeboval bych poradit, rád bych si zaregistroval helper od Davida (https://componette.org/search/?…), ale nevím kam umístit kód helperu a kde a jak ho zaregistrovat, aby fungoval v Latté.

Děkuju moc

Tabetha
Člen | 140
+
0
-

ja mam svoje vo forms ..a v službách zaregistrované podľa https://latte.nette.org/en/develop#…

Gustav
Člen | 16
+
0
-

A kde máš umístěný ten Helper Loader?

Tabetha
Člen | 140
+
0
-

som si dal do \App\forms\Helpers.php
a tam

class Helpers extends \Nette\Object
     {
public static function loader($helper)
	 {
	 if (method_exists(__CLASS__ , $helper))
	      {
	      return callback(__CLASS__ , $helper) ;
	      }

	 }
//dalsi kod resp helpery
}
Gustav
Člen | 16
+
0
-

To jsem si udělal, mám ve formulářích soubor Helpers.php, v něm kód helperu. Ale jakmile ho registruji jako službu v configu tak to píše – „Service ‚myTemplateHelpers‘: Unable to pass arguments, class FrontModule\Helpers has no constructor.“

stefi023
Člen | 71
+
0
-

Vsak ti to tam presne pise co je za problem:)

Unable to pass arguments, class FrontModule\Helpers has no constructor.

Nemas v tom helperu konstruktor a pritom ho snazis vytvorit s predanim parametru…

Jak ho registrujes v configu? Urcite s parametrama…

Gustav
Člen | 16
+
0
-

V configu ho registruji takto –

myTemplateHelpers:
                        factory: FrontModule\Helpers( %wwwDir%, @httpRequest )

Už to jede, díky, smazal jsem ty parametry :)

Editoval Gustav (4. 7. 2012 15:38)

Gustav
Člen | 16
+
0
-

Ještě bych měl dotaz, rád bych v helperu používal některá data z databáze, ale nevím jak v configu a v Helper Loaderu nastavit připojení k databázi, používám dibi.

Tabetha
Člen | 140
+
0
-

asi takto …nie som si istý pri dibi ale skús https://doc.nette.org/cs/quickstart