1

controllerresource. 我在其中创建了一个自定义函数,但是当我在其中使用它时,routeblade.php说它没有定义。

非常感谢任何有关错误和解释的帮助!

    <div class="modal fade" id="issueModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
        <div class="modal-header">
            <h5 class="modal-title" id="exampleModalLabel">Modal title</h5>
            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
            <span aria-hidden="true">&times;</span>
            </button>
        </div>
        <div class="modal-body">
            <form action="{{route('inventory.deduct')}}" method="post">


        </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-primary">Save changes</button>
                <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
            </div>
            </form>
        </div>
    </div>
</div>

控制器内部的自定义函数

public function deduct(Type $var = null)
{
    dd("test");
}

路线

Route::resource('inventory', 'InventoryController');
4

2 回答 2

3
Route::post('/inventory/deduct', 'InventoryController@deduct')->name('inventory.deduct');

将此添加到 Web.php 文件中的路由。Resource 只为控制器创建默认路由,而不是自定义路由。

于 2019-09-05T05:16:08.277 回答
0

资源路线用于index, create, store, show, edit,updatedestroy。您的新路线未在资源路线中定义。所以你必须创建一个新的路线来使用它。web.php在文件中的资源路由上方添加此路由

Route::post('inventory/deduct', 'InventoryController@deduct')->name('inventory.deduct');

这将创建您的路线,您可以在您的表单中使用它,您可以为您的控制器制作该功能以执行您想做的事情。

于 2019-09-05T05:22:04.887 回答