错误 419 页面已过期。 Laravel Yajra 数据表

Error 419 Page Expired. Laravel Yajra datatables

我正在尝试添加一个表单按钮来删除记录,但出于某种原因 csrf 令牌没有插入它。我尝试了很多方法,但无法正常工作。有什么建议吗?

<div class="row">
    <a href="{{ route('publicaciones.show', $id)}}" class="btn btn-success btn-sm h-25 d-inline-block mr-3">Ver</a>
    <a href="{{ route('publicaciones.show', $id)}}" class="btn btn-primary btn-sm h-25 d-inline-block">Editar</a>

    <form method="POST" action="{{ url("publicaciones/{$id}") }}" class="col">
         @csrf

        @method('DELETE')
        <button class="btn btn-danger btn-sm" type="submit" id="eliminar">Eliminar</button>

    </form>
</div>

附上图片:

通常您的路由不使用网络中间件。确保您使用 routes/web.php 作为路线,并确保 RouteServiceProvider 具有 Route::middleware('web') 示例:

/**
 * Define the "web" routes for the application.
 *
 * These routes all receive session state, CSRF protection, etc.
 *
 * @return void
 */
protected function mapWebRoutes()
{
    Route::middleware('web')->namespace($this->namespace)->group(base_path('routes/web.php'));
}

或者您可以像下面这样手动添加到每条路线使用:

Route::group(['middleware' => ['web']], function () {

    // your routes here

});

如评论RouteServiceProvider 网络中间件将使您的路由接收会话状态、CSRF 保护等