Php 拉雷维尔。更改url以获得更好的链接
想要将我的链接更改为更好的链接,例如: 此urlPhp 拉雷维尔。更改url以获得更好的链接,php,laravel,Php,Laravel,想要将我的链接更改为更好的链接,例如: 此urlRoute::get('/sections/{id}','SectionController@show');给我地址laravel.dev/sections/1。如何在没有htaccess的情况下将/1更改为laravel.dev/sections/section\u name。可能吗? 谢谢你的帮助 路线 Route::get('/sections/{section}','SectionController@show'); 控制器 publi
Route::get('/sections/{id}','SectionController@show');
给我地址laravel.dev/sections/1
。如何在没有htaccess的情况下将/1
更改为laravel.dev/sections/section\u name
。可能吗?
谢谢你的帮助
路线
Route::get('/sections/{section}','SectionController@show');
控制器
public function show(Section $section)
{
$listSections = $section->user;
return view('sections.section', compact('listSections'));
}
查看
<a href="{{URL::to('/sections/'.$listSection->name)}}">{{$section->name}}</a>
您必须更改路线,并使用区段名称访问路线。根据检索模型的方式,可能必须更改控制器。如果您使用的是隐式路由模型绑定,请将以下内容添加到您的Section eloquent模型中
public function getRouteKeyName()
{
return 'section_name';
}
如果要显式获取它,则可能还必须进行相应的更改。您必须更改路由并使用节名访问路由。根据检索模型的方式,可能必须更改控制器。如果您使用的是隐式路由模型绑定,请将以下内容添加到您的Section eloquent模型中
public function getRouteKeyName()
{
return 'section_name';
}
如果要显式获取它,则可能还必须进行相应的更改。您可以使用类似的方法,但这不是一种好的做法
if(window.location.href.indexOf("/sections/") > -1) {
window.history.pushState(null, null, '/sections/your_section_name');
}
你可以使用类似的方法,但这不是好的做法
if(window.location.href.indexOf("/sections/") > -1) {
window.history.pushState(null, null, '/sections/your_section_name');
}
只需更改路由和传递节_名称而不是id只需更改路由和传递节_名称而不是id