第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Laravel 檢查多個(gè)字段的獨(dú)特驗(yàn)證

Laravel 檢查多個(gè)字段的獨(dú)特驗(yàn)證

PHP
臨摹微笑 2023-08-11 16:19:48
我有subject表和字段是standard_id、stream_id、medium_id、board_id和subject_name許多其他字段。我想添加唯一的規(guī)則,該規(guī)則對(duì)于, , ,字段subject_name是唯一的。standard_idstream_idmedium_idboard_id$validator = Validator::make( $inputs,             [                'v_name' => [                        'required',                        Rule::unique( 'tbl_subject' )->ignore( $id, 'id' ),                    ],            ],            [                'v_name.required' => 'Name is required',                'unique' => 'Name address already exits.',            ]        );例子standard_id, stream_id, medium_id, board_id subject_name1             2            1            3          A3             2            4            1          B1             3            1            4          c驗(yàn)證就像 subject_name "A" 對(duì)于 1, 2, 1, 3 是唯一的。 B 對(duì)于 3, 2, 4, 1 是唯一的。但是 subject_name "A" 對(duì)于 2,2,1,3 不是唯一的,依此類推。
查看完整描述

1 回答

?
DIEA

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超3個(gè)贊

*** 與OP討論后***

問題應(yīng)該說明他們正在嘗試插入一條記錄,并希望驗(yàn)證數(shù)據(jù)庫(kù)的唯一性。一種方法是通過自定義規(guī)則,如下所示:

class UniqueSubject implements Rule

{

? ? private $keys;


? ? public function __construct(array $keys) {

? ? ? ? $this->keys = $keys;

? ? }


? ? /**

? ? ?* Determine if the validation rule passes.

? ? ?*

? ? ?* @param? string? $attribute

? ? ?* @param? mixed? $value

? ? ?* @return bool

? ? ?*/

? ? public function passes($attribute, $value)

? ? {

? ? ? ? return ! Subject::where($this->keys)->where('subject_name', $value)->exists();

? ? }


? ? /**

? ? ?* Get the validation error message.

? ? ?*

? ? ?* @return string

? ? ?*/

? ? public function message()

? ? {

? ? ? ? return 'The Subject Name must be unique for the given standard, stream, medium and board.';

? ? }

}

然后您可以在規(guī)則中使用驗(yàn)證,例如:


$keys = $request->only('i_standard_id', 'i_stream_id', 'i_board_id', 'i_medium_id');


$validator = Validator::make( $inputs, [

? ? ...

? ? 'subject_name' => [

? ? ? ? 'required',

? ? ? ? 'string',

? ? ? ? new UniqueSubject($keys)

? ? ],

? ? ...

]);



查看完整回答
反對(duì) 回復(fù) 2023-08-11
  • 1 回答
  • 0 關(guān)注
  • 186 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)