我是laravel的新手.我将此路由定义为编辑按钮:
<a href="/editTasks/{{ $task->id }}"><button class="btn btn-primary">Edit task</button></a>
Run Code Online (Sandbox Code Playgroud)
生成的网址很好,但找不到网页.我正在TaskController@edit使用此路线返回一个视图:
Route::get('/editTasks/{{ $task->id }}', 'TaskController@edit');
Run Code Online (Sandbox Code Playgroud)
有人可以帮我弄清楚我做错了什么吗?
定义路由时,路由参数应该只有一个{.此外,您不应在声明中使用变量,而应使用变量的名称.
在您的示例中,这可能是一个有效的声明:
Route::get('/editTasks/{id}', 'TaskController@edit');
Run Code Online (Sandbox Code Playgroud)
更多信息可以在文档中找到:https://laravel.com/docs/5.7/routing#route-parameters
还建议使用路由名称,以便自动生成URL.
例如:
// Route declaration
Route::get('/editTasks/{id}', 'TaskController@edit')->name('tasks.edit');
// In view
<a href="{{ route('tasks.edit', [$task->id]) }}">Edit task</a>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
103 次 |
| 最近记录: |