我如何使用 vue 将变量从视图传递到控制器,Laravel 中的惯性

How do i pass a variable from view to controller using vue, inertia in Laravel

我想将 'CourseId' 变量从页面视图传递到控制器以便将其删除,但不确定为什么我无法访问该变量:

查看:

this.$inertia.get(this.route('applications.courseDelete', CourseId ))

路线:

Route::get('applications/courseDelete', [ApplicationsController::class, 'courseDelete'])->name('applications.courseDelete')->middleware('auth');

控制器:

public function courseDelete($courseId)
{        
   dd($courseId);
}

这是 returns 错误,'too few arguments...'。我也试过在这里添加模型,但是 returns 是一个空白数组。确定我在这里遗漏了一些非常明显的东西吗?

由于您没有提供调用 get 请求的方法,我猜您只需要做这样的事情,因为您是从 data() 调用 CourseId。

this.$inertia.get(this.route('applications.courseDelete', this.CourseId ))

您还需要通过您的路由传递变量,因此也更改此设置

Route::get('applications/courseDelete/{CourseId}', [ApplicationsController::class, 'courseDelete'])->name('applications.courseDelete')->middleware('auth');