php - 如何在 Laravel 中使用 required_if 验证?
问题描述
我真的很想知道我应该如何required_if
使用JSON
?
我仍然对 API 的想法感到困惑,但我必须完成我的任务,我已经validation
在我的控制器上添加了它,但它不起作用。
public function StoreReqSchedule(Request $request){
$this->validate([
'reqtype'=> 'required',
'startdate' => 'required',
'enddate' => 'required',
'reason'=> 'required_if: reqtype,==, Request Day Off',
'route' => 'required_if: reqtype,==, Request Schedule',
'actualschedule' => 'required_if:reqtype,==, Change Schedule',
'changetoschedule'=>'required_if:reqtype,==,Change schedule',
'swapcrewid'=> 'required_if:reqtype,==,Swap Schedule',
'swapcrewschedule'=>'required_if:reqtype,==,Swap Schedule',
'note'=>'required'
]);
// ...
}
如果需要,这是正确的使用方法吗?
****编辑**
每个都API endpoint
包含以下参数:
对于请求时间表:
请求类型
开始日期
结束日期
原因(如果请求类型为 Request Day Off 则为必填项)
route(如果请求类型 Request Schedule 则为必填项)
实际时间表(如果请求类型更改时间表则为必填项)
change-to-schedule (如果请求类型变更时间表,则为必填项)
swap-crew-id(如果请求类型交换计划则为强制性)
swap-crew-schedule(如果请求类型为 Swap Schedule,则为强制性)
笔记
上面的那些列表是任务,如果请求类型为 Request Day Off和其他强制性 ofc ,我很难理解如何为 Mandatory 编写代码。
ErrorException: App\Http\Controllers\B777Controller::validate($request) 的声明应该与 App\Http\Controllers\Controller::validate(Illuminate\Http\Request $request, array $rules, array $messages = Array 兼容, 数组 $customAttributes = Array) >> 这是错误
解决方案
您只需要在之后删除“空白”==,
并将$request
对象传递给该validate()
方法。见下文:
$this->validate($request, [
'reqtype'=> 'required',
'startdate' => 'required',
'enddate' => 'required',
'reason'=> 'required_if:reqtype,==,Request Day Off',
'route' => 'required_if:reqtype,==,Request Schedule',
'actualschedule' => 'required_if:reqtype,==,Change Schedule',
'changetoschedule'=>'required_if:reqtype,==,Change schedule',
'swapcrewid'=> 'required_if:reqtype,==,Swap Schedule',
'swapcrewschedule'=>'required_if:reqtype,==,Swap Schedule',
'note'=>'required'
]);
推荐阅读
- tcpdump - 使用 postrotate 命令时 tcpdump 何时重命名文件?
- python - 我如何在 pydantic 模型中进行关键动态
- bash - 使用 xargs 将数组作为命令行参数传递
- blockchain - 部署实现 IUniswapV2Router02 的智能合约时出错
- geoserver - GeoServer中栅格查询上的多边形
- python - 无法在循环单链表中插入节点
- longhorn - 什么是 Longhorn 节点选择器?
- android - 使用 react-native 读取 XLSX 或 CSV 数据
- ruby - Ruby中名为“Proc”的对象的“全名”是什么
- python - 我想将 Outlook 中附加的 csv 文件作为数据框读入我的 Jupyter Notebook