cari

Rumah  >  Soal Jawab  >  teks badan

Bagaimana untuk bertanya dan memaparkan data dalam Symfony2 layout.html.twig?

Jika terdapat bahagian awam dalam layout.html.twig seperti bar sisi yang perlu disoal dan dipaparkan, apakah cara terbaik untuk melakukannya?

过去多啦不再A梦过去多啦不再A梦2750 hari yang lalu613

membalas semua(2)saya akan balas

  • phpcn_u1582

    phpcn_u15822017-05-16 16:48:16

    http://symfony.cn/docs/quick_tour/the...

    balas
    0
  • 世界只因有你

    世界只因有你2017-05-16 16:48:16

    Dua kaedah:

    1. Asingkan fail .twig (seperti test.twig) dalam reka letak yang mana data perlu dibaca daripada pangkalan data, dan gunakan kaedah render Controller dalam reka letak:

    {{ render(controller('AppBundle:ControllerName:MethodName', { 'params': 3 })) }}

    Dalam ControllerName::MethodName render test.twig file:

    public function MethodName($params)
    {
        $repository = $this->get('doctrine.orm.entity_manager')
            ->getRepository('AppBundle:EntityName');
        
        return $this->render('AppBundle:ControllerName:test.twig', array(
            'result' => $repository->findByParams($params)
        ));
    }

    2 Gunakan acara KernelResponse untuk menambah pembolehubah global secara dinamik

    
    public function __construct(ContainerInterface $container)
    {
        // container 需要通过 service.yml 注入
        $this->container = $container;
    }
    
    public function onKernelResponse()
    {
        $twig = $this->container->get('twig');
        $em   = $this->container->get('doctrine.orm.entity_manager');
        
        $repository = $em->getRepository('AppBundle:EntityName');
    
        $twig->addGlobal('result', $repository->findByParams());
    }

    Hanya kod teras sahaja yang ditulis, anda juga perlu mengkonfigurasi perkhidmatan

    balas
    0
  • Batalbalas