Problémy s registrací defaultních helperů V0.9

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

Dobrý den,
nedaří se použít některé defaultní helpery.
Registrace helperu number zaregistruji bez problému.

<?php
$w = new Template();
$w->registerFilter(new LatteFilter);
$w->registerHelper('number', 'number_format');
?>

Ale například helpery truncate, date ne.

<?php
$w = new Template();
$w->registerFilter(new LatteFilter);
$w->registerHelper('date', 'TemplateHelpers::date()');
$w->registerHelper('truncate', 'String::truncate()');
?>

vraci to Callback ‚TemplateHelpers::date()‘ is not callable.

voda
Člen | 561
+
0
-

Odstraň ty závorky, u toho prvního příkladu je taky nemáš

<?php
$w = new Template();
$w->registerFilter(new LatteFilter);
$w->registerHelper('date', 'TemplateHelpers::date');
$w->registerHelper('truncate', 'String::truncate');
?>

Kdyžtak se podívej na Control::createTemplate()

Editoval voda (17. 6. 2011 11:14)

22
Člen | 1478
+
0
-

nestačí pro registraci default helperů:

$template->registerHelperLoader('DefaultHelpers::loader');

Editoval 22 (17. 6. 2011 11:19)

Naith_cz
Člen | 8
+
0
-

Díky, prostě pátek…

Naith_cz
Člen | 8
+
0
-

22 napsal(a):

nestačí pro registraci default helperů:

$template->registerHelperLoader('DefaultHelpers::loader');

Přesně něco takového jsem hledal, protože jsem chtěl zaregistrovat všechny default helpery najednou, jenže to nefunguje.
vrací Callback ‚DefaultHelpers::loader‘ is not callable.

uestla
Backer | 796
+
0
-

Ahoj.

V 0.9.x třída DefaultHelpers není.

Použít můžeš ale

$template->registerHelperLoader('Nette\Templates\TemplateHelpers::loader');

Což ale není náhražka za DefaultHelpers ve 2.0b verzi – obecně jako inspiraci můžeš brát Control::createTemplate().