首页 文章

Symfony 3.4路由上的动态内容(监听器?)

提问于
浏览
1

我想在我的应用程序的几个页面上有动态内容 . 此内容将存储在我的数据库中,管理员可以随时更新它 .

是否有可能在每次调用路由时创建一个侦听器,以检查数据库中是否有此路由的内容,然后将其注入模板中?

非常感谢你

2 回答

  • 0

    如果你查找路线,它可以让你更有活力 . 即:

    /**
     * @Route("/pages/{fieldname}/{value}
     */
    public function pageContentAction(Request $request)
    {
    ...
    }
    

    这样您就可以重用params并检查DB的内容:

    $fieldName = $request->get('fieldname');
            $newValue = $request->get('value');
    
            $page = $em->getRepository('AppBundle:Pages')->findOneBy(
                array('fieldname' =>$fieldName,'value'=>$value)
            );
            if ($page == null){
                return new JsonResponse(['message'=>'Page Not Found'],404);
            }
    
  • 0

    您可能需要查看动态路由器(https://symfony.com/doc/master/cmf/bundles/routing/dynamic.html) . 它是Symfony CMF包(http://cmf.symfony.com/)的一部分,它实际上是一种为Symfony构建CMS的方法 .

相关问题