【问题标题】:Dynamic routing in laravel 5.2laravel 5.2 中的动态路由
【发布时间】:2017-07-19 17:35:47
【问题描述】:

我想生成一个类似'top-hotels-in-india' 的网址,这里hotelsindia 是用户将搜索的动态值。 当我使用

Route::get("top-hotels-in-india",'Controller@method');

它有效,但这是一个静态 url 我想要这个动态所以把它改成

Route::get("top-{things}-in-{country}",'Controller@method');

但它不起作用。如果我用/ 替换-,它的效果很好,但我想在url 中使用连字符而不是斜杠。 我应该怎么做才能生成这种类型的路线。 请帮忙。

【问题讨论】:

    标签: php laravel-5 routing laravel-routing


    【解决方案1】:

    我从来没有这样用过,但你可以像这样使用正则表达式,

     Route::get("/{dynamic_url}",'Controller@method')->where ("dynamic_url","(top)\-[a-z]+\-(in)\-[a-z]+");
    

    如果您知道您的事物和国家/地区,您还可以通过 foreach 循环创建 url。

    希望对你有所帮助。

    【讨论】:

    • 感谢您的帮助,但不幸的是它不起作用。
    • 删除/并重试
    【解决方案2】:

    您不应该使用这种 URL。不过你可以试试下面的路线。

    Route::get("/{dynamic_url}",'Controller@method')->where("dynamic_url","top-[a-zA-z]*-in-[a-zA-Z]*");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-18
      • 2016-04-25
      • 1970-01-01
      • 1970-01-01
      • 2016-08-30
      相关资源
      最近更新 更多