php - Laravel 6 - 控制器中的更新功能运行但模型未传递给控制器
问题描述
我想从background_check_batches
表中更新一条记录。所做的是列出所有记录,每个记录都有一个status
可以更改的属性(列)。单击该status
值将提示弹出模式以更新该值。由于有多个记录共享一个模型,因此使用js更改表单的操作。这里的问题是提交表单时,收到了请求的数据,但BackgroundCheckBatch
没有收到模型 ID。我以前做过这种相同的任务,但由于某种原因它不起作用。以下是我的代码。
网页.php
Route::put('/admin/dashboard/background-request/{backgroundrequest}', 'BackgroundCheckBatchController@update')->name('update');
状态.blade.php ()
{!! Form::open(['action' => ['BackgroundCheckBatchController@update', -1], 'method' => 'POST', 'id' => 'adminBackgroundCheckStatusModalForm']) !!}
@csrf
@method("PUT")
<div class="modal__content">
<select class="table_custom_select" id="Status" name="status">
<option class="table_custom_select_pending" value="Pending">Pending</option>
<option class="table_custom_select_progress" value="In Progress">In Progress</option>
<option class="table_custom_select_complete" value="Completed">Completed</option>
</select>
</div>
<div class="modal__footer">
<button type="submit" class="button button_size_m button_theme_primary">Proceed</button>
</div>
{!! Form::close() !!}
背景检查批处理控制器
public function update(Request $request, BackgroundCheckBatch $backgroundCheckBatch) {
return $backgroundCheckBatch;
}
return $backgroundCheckBatch;
输出和空数组,[]
我希望它返回BackgroundCheckBatch
URL 中提供的 id
如果 I return $request;
,它将像这样输出:
{
_token: "Ax789Dr4VXFVE1vpjtKhEWdBjdCZqARDaNQnk7K8",
_method: "PUT",
status: "Completed"
}
如果我没有提供足够的细节,请通知我
解决方案
如果要使用路由模型绑定,更新函数中的参数名称应与路由参数匹配:
public function update(Request $request, BackgroundCheckBatch $backgroundrequest) {
return $backgroundrequest;
}
推荐阅读
- flutter - 我在飞镖中得到不可为空的实例,我该如何解决?
- react-native - 如何从 TextInput(onChange 或 onTextChange)创建 rxjs Observable
- intellij-idea - 如何编写 Intellij 插件来显示来自静态分析的 Python 类方法返回值(对于非常简单的表达式)?
- jupyter-notebook - 无法在 Windows 10 的 jupyter notebook 中启动 ocaml-jupyter 内核
- javascript - 关于 JavaScript 代理和 getter 函数的奇怪问题
- php - MAMP Pro 3.3.1 为 windows 用户添加新的 PHP 版本
- javascript - 何时使用 AbortController 移除事件监听器?
- c++ - CComPtr 分配是线程安全的吗?
- react-native - 从反应本机应用程序向 Auth0 api 发出请求
- html - 如何在 CSS3 网格中将一个单元格覆盖在其他两个单元格上