gpt4 book ai didi

Laravel 如何检查验证唯一表两个字段

转载 作者:行者123 更新时间:2023-12-02 16:26:08 26 4
gpt4 key购买 nike

我有表A,有2个字段

1. song_id
2. playlist_id

我想检查 laravel 验证独特的功能示例:我已插入数据

id =>  1
song_id => 2
playlist_id => 34

然后我必须再次插入数据我想检查是否 playlist_id => 34 已插入 song_id = 2 显示消息“已插入”,但如果 playlist_id => 34 插入 song_id = 3 允许插入

感谢您的帮助!

最佳答案

这是需要应用的规则。使用示例数据进行测试,它可以按预期工作。

use Illuminate\Validation\Rule;

$playlist_id = request('playlist_id');

$rules = [
'song_id' => Rule::unique('tableA')->where(function ($query) use ($playlist_id) {
$query->where('playlist_id', $playlist_id);
})
];

示例条件

DB data
song_id playlist_id
2 34
3 34

Request data
song_id playlist_id validation
2 34 fail
3 34 fail
4 34 success
2 35 success
3 35 success

示例测试代码

$data = [
'song_id' => 2,
'playlist_id' => 34,
];

$playlist_id = $data['playlist_id'];

$validator = \Validator::make($data, [
'song_id' => Rule::unique('tableA')->where(function ($query) use ($playlist_id) {
$query->where('playlist_id', $playlist_id);
})
]);

if ($validator->fails()) {
// handle failed validation
}

关于Laravel 如何检查验证唯一表两个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44247440/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com