我的索引页面上有一些帖子,每个帖子上都有一个编辑按钮。 问题是,我希望URL是匈牙利语,但是每次我将函数的名称从edit更改为sth时。否则会给我404错误。
我用以下代码显示帖子:
@foreach($posts as $post)
<div class="card p-3">
<h3><a href="/elado/{{$post->id}}">{{$post->title}}</a></h3>
<small>Feltöltve: {{$post->created_at}}</small>
<h3><a href="/elado/{{$post->id}}/edit">Szerkesztés</a></h3> I TRY TO CHANGE /EDIT TO STH. ELSE HERE
</div>
@endforeach
这是我的带有编辑功能的帖子控制器:
public function edit($id) { I change edit here as well
$post = Post::find($id);
return view('elado.szerkeszt')->with('post', $post);
}
在web.php中,我已经
Route::resource('elado', 'PostsController');
答案 0 :(得分:0)
因为您在路由声明中使用了resource()
方法。默认情况下将使用其中的路由和控制方法
[
'create',
'store',
'show',
'edit',
'update',
'destroy',
]
如果要更改方法名称,请自行声明路由
Route::post('/change', 'PostsController@change');
答案 1 :(得分:0)
您可以使用诸如除外方法之类的方法从资源路由中排除编辑方法,然后使用自定义编辑方法定义新路由并放在资源路由之前:
Route::post('/elado/{id}', 'PostsController@sth');
Route::resource('elado', 'PostsController')->except([
'edit'
]);