laravel - 如何使用 UUID 验证唯一密钥?
问题描述
我有验证类,我试图确保代码列基于 UUID 是唯一的。
class ProjectRequest extends FormRequest
{
public function authorize()
{
return true;
}
public function rules()
{
$uuid = $this->project ?? ' ';
return [
'code' => [
'required', 'min:2',
'max:255', "unique:common_projects,code,{$uuid},uuid"
],
'description' => ['required', 'min:3', 'max:9999'],
'coordinator_id' => ['nullable'],
];
}
}
路线
Route::apiResource('/projects',ProjectController::class);
尝试创建新项目时,我收到以下消息。
“消息”:“SQLSTATE [22P02]:无效的文本表示:7 错误:uuid 类型的输入语法无效:”(SQL:从“common_projects”中选择计数(*)作为聚合,其中“代码”= 测试和“uuid” <> )", "异常": "Illuminate\Database\QueryException",
我正在使用 Postgres 数据库。
解决方案
推荐阅读
- jonkykong-sidemenu - jonkykong SideMenu presentationStyle 升级到 6.4.8 后停止工作
- python - 无法获取网址。请求 404
- java - 开关中的计算案例语句(java)
- c++ - 用 C++ 中的索引来初始化一个带有 lambda 的向量
- sqlite - 如何在 DB Browser for SQLite (GUI) 中插入多个外键
- sql - 我可以将临时表中的两列加在一起吗?
- typescript - 使用 Vue 类样式组件的递归组件
- c# - 在 WPF 上同时多次播放相同声音的最佳方法是什么?
- mongodb - 如何在pymongo中按特定字段分组输出?
- javascript - 我无法在 A-frame 中加载 .glb 文件!我该如何解决?