我想创建动态 URL 路由而不是 id。我想在数据库中创建 url 列,我想使用该列在路由中创建 url。
Route::get('our-services/{service}', 'ServiceController@show');
这是我的路由代码,使用这个路由 url 看起来像这样
127.0.0.1:8000/1
但我想这样创作,
127.0.0.1:8000/name
这是我动态创建的链接代码
<a href="{{url('our-services/'.$service->url)}}" class="small white uppercase font-weight-6 underline">Read More</a>
它是从数据库列创建的动态 url。
最佳答案
您使用 route model binding自定义解析逻辑。在 RouteServiceProvider 启动方法中:
Route::bind('service', function ($value) {
return App\Service::where('url', $value)->first() ?? abort(404);
});
关于database - 如何在 Laravel 5.6 中使用 get Route 而不是 id 创建动态 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51448026/