Sziasztok!
Hosszú órák óta kínlódik pár sor kóddal
mymodule.module:
function mymodule_theme($existing, $type, $theme, $path) { return [ 'my_template' => [ 'variables' => ['teszt_var' => NULL], ], ]; }
src/Controller/ArchiveController.php:
namespace Drupal\mymodule\Controller; use Drupal\Core\Controller\ControllerBase; class ArchiveController extends ControllerBase{ public function archive() { '#theme' => 'my_template', '#teszt_var' => $this->t('Something'), ); } }
theme_dir/templates/my-template.html.twig:
<p>Test twig template!</p> <p>test_var: {{ teszt_var }}</p>
Maga a template megjelenik, de a "teszt_var" változó üres.
Mi lehet a gond?
Köszönöm!
Drupal verzió:
Fórum:
Az archive() metódus hol
Az archive() metódus hol hívódik meg?
A mymodule.routing.yml-ben:
A mymodule.routing.yml-ben:
Köszi!
Valszeg az a lesz a hiba,
Valszeg az a lesz a hiba, hogy a témádban akarod használni magát a template fájlt, viszont a modulodban definiálod.
Vagy átrakod a theme() implementációt a témádba és menni fog, vagy a jelenlegi implementációt kiegészíted egy "path" és egy "template" tömbkulccsal, ami a témádban lévő fájlra mutat:
Remélem tudtam segíteni!
Üdv,
Bálint
Köszönöm szépen! Az első
Köszönöm szépen! Az első bejött, átraktam a .theme fájlba és jó lett.