laravel - Laravel - 如何使用 Maatwebsites 验证与 company_id 相关的唯一字段
问题描述
我使用 Laravel-5.8 和 Maatwebsite-3.1 导入了这个 excel:
class FirstGradeLevelSheetImport implements ToModel, WithHeadingRow, WithBatchInserts, WithValidation
{
private $errors = []; // array to accumulate errors
use Importable, SkipsErrors;
public function model(array $row)
{
$grade_data = [
'grade_level_code' => $row['grade_level_code'] ?? '',
'grade_level_name' => $row['grade_level_name'],
'company_id' => Auth::user()->company_id,
'created_by' => Auth::user()->id,
'created_at' => date("Y-m-d H:i:s"),
'is_active' => 1,
];
$grade = HrGradeLevel::create($grade_data);
}
// this function returns all validation errors after import:
public function getErrors()
{
return $this->errors;
}
public function rules(): array
{
return [
'grade_level_code' => [
'required',
'min:2',
'max:210',
],
'grade_level_name' => [
'required',
'string',
'min:3',
'max:80'
],
];
}
}
在文章https://docs.laravel-excel.com/3.1/imports/validation.html中,您只能验证一个字段是否唯一
如何验证grade_level_code 相对于company_id 是唯一的?
谢谢
解决方案
推荐阅读
- angular - Angular:如何修复 SameSite Cookie 问题
- jmeter - Jmeter 显示更少的延迟时间,而 Bombardier 显示更多
- docker - 如何在 docker-compose 中将卷连接到 docker 容器
- javascript - [tag][React.js] 孩子展示道具未定义
- node.js - 如何解决nodejs中的此错误无法在Nodejs中发布/错误
- mysql - 从 CSV 加载数据到 MySQL,但是 SQL 表中的属性需要从数据中做同样的计算
- python - Pandas Dataframe 键到数组
- javascript - 图像在网页上打印时间过长 - JavaScript 问题
- function - 减少功能
- reactjs - 错误:使用 axios 获取 API 时,对象作为 React 子项无效