0

有人可以帮我解决这个错误吗?我已经挣扎了好几天了。 在此处输入图像描述

[Route: helper.update] [URI: helper/{id}] 缺少必需的参数。(查看:D:\Training\LaravelProjects\helps\resources\views\helper\edit.blade.php)

我已按照文档进行操作,但仍然无法弄清楚出了什么问题。这是我的代码。

网页.php

Route::group(['prefix' => 'helper'], function (){
 Route::get('/create', [
    'uses' => 'HelperController@create',
    'as' => 'helper.create'
 ]);

 Route::get('/{id}/edit', [
    'uses' => 'HelperController@edit',
    'as' => 'helper.edit'
 ]);

 Route::get('/{id}', [
    'uses' => 'HelperController@show',
    'as' => 'helper.show'
 ]);

 Route::post('/', [
    'uses' => 'HelperController@store',
    'as' => 'helper.store'
 ]);

 Route::put('/{id}', [
    'uses' => 'HelperController@update',
    'as' => 'helper.update'
 ]);

 Route::delete('/{id}', [
    'uses' => 'HelperController@destroy',
    'as' => 'helper.destroy'
 ]);
});

助手控制器.php

public function edit($id)
{
    $helper = Helper::find($id);
    return view('helper.edit', compact('helper'));
}

index.blade.php

<tbody>
                @foreach($helpers as $helper)
                <tr>
                    <td>{{ $helper->name }}</td>
                    <td>{{ $helper->email }}</td>
                    <td>{{ $helper->telephone }}</td>
                    <td>{{ $helper->city }}</td>
                    <td>{{ $helper->district }}</td>
                    <td>{{ $helper->province }}</td>
                    <td>{{ $helper->category }}</td>
                    <td>
                        <a href="{{ route('helper.edit', $helper->id) }}" class="edit">
                            <i class="fas fa-pencil-alt" title="Edit" style="font-size: 16px"></i>
                        </a>
                        <a href="#deleteEmployeeModal" class="delete" data-toggle="modal" data-widget="">
                            <i class="fas fa-trash" title="Delete" style="font-size: 16px"></i>
                        </a>
                    </td>
                </tr>
                @endforeach

我只想在单击编辑链接后打开edit.blade.php文件。删除部分不完整,请忽略。此外,id 作为参数传递,但仍然说它丢失了。在此处输入图像描述

4

2 回答 2

0

确保resources\views\helper\edit.blade.php将帮助程序 ID 传递给更新发布/放置 html 表单

{{ route('helper.update', $helper->id) }}

希望这可以帮助

于 2019-12-31T10:51:35.333 回答
0

我的项目遇到了类似的问题,这里的问题是您的 ID。那些缺失的参数是 Laravel 无法获取的 ID,因为它有一个空值。

在 PHPMyAdmin 中,

编辑您的 SQL 文件并删除负责存储触发错误的特定操作的信息的表 ID。然后在表格的开头添加一列。将名称设置为 id,将长度/值设置为 11,将类型设置为整数 (INT),然后单击 NULL 旁边的框并将值设置为 PRIMARY。等待弹出窗口,然后单击确定。之后,勾选自动增量下的框。保存您的表格,现在刷新并注意每列现在都有一个具有不同值的 id。并且不为空。返回 Ur 应用程序并重新提交您的请求,它应该可以正常工作。

于 2020-08-31T00:35:23.290 回答