代码之家  ›  专栏  ›  技术社区  ›  Webtect

来自数据库的Laravel URL处理

  •  1
  • Webtect  · 技术社区  · 9 年前

    在Laravel中,如果路由是动态生成的,我将如何处理它?我想做的是让用户能够在网站上创建页面,这样他们就可以说他们想创建/关于,但这并没有在路由文件中列出,因为他们会通过管理面板将其添加进来。我正在试图弄清楚我该怎么做,这样我就可以获得完整的URL,看看它是否是路由文件中已经存在的页面,如果它不存在,那么检查数据库,看看该页面是否存在该名称,以及它是否显示了该页面的内容。

    1 回复  |  直到 9 年前
        1
  •  4
  •   RhapX    9 年前

    要实现动态路由,您可以按照以下方式进行操作:

    Route::get('/{pageName}', function($pageName) {
        // Do your logic here to determine if the page is in the database, or a file.
    });
    

    查看Laravel文档 Routing Parameters 看看你还能用它们做什么。在我看来,Laravel路由系统是非常干净和强大的。

    使现代化

    多条路线的一种方法如下:

    Route::get('/{pageName}/{subPage}', function($pageName, $subPage) {
        // Do your logic here to determine if the page is in the database, or a file.
    });
    

    通过使用正则表达式,您也可以进入更高级的URL结构。所有这些都记录在上面提供的链接中。