簡體   English   中英

Laravel數組驗證規則

[英]Laravel validation rules for array

我實際上需要進行驗證,這需要檢查文件

  1. 需要
  2. 排列
  3. 需要至少兩列
  4. 一個鍵名應該是correct_topic
  5. 其他一個需要是wrong_topic

現在,我正在為其他領域編寫如下規則。

return [
         'category'   => 'required|numeric',
         'text' => 'required',
         'type' => 'required|numeric|in:1,2,3',
         'vendor'        => 'required|numeric|exists:users,id',
         'topic' => 'required|array'
       ];

我如何改善這一點並包括上面提到的topic驗證?

我在TopicRequest類中編寫這些規則。 基本上,我需要檢查歸檔的topic是否是至少有2列且不超過4列的數組,並且其中一個數組鍵應為correct-topic而其他鍵則應為wrong_topic_1等。

是否有任何默認驗證規則可以有效地用於這種情況?

您可以創建自己的驗證器。 Laravel鑒定

您可以通過第一個array驗證並使用dot notation驗證樣式來實現上述驗證列表,如下所示:

return [
    ................
     'topic' => 'required|array|min:2|max:4',
     'topic.correct_topic' => 'required',
     'topic.wrong_topic' => 'required'
];

根據Laravel文檔使用min和max,對文件字段使用size規則我認為也應與數組相關 ,即采用count()方法。 Ref min-heremax-here

PS:我不能確定這是否真的能解決您的問題,但我相信它應該會啟發您所需的答案。

如果有任何疑問,您也可以參考驗證數組

希望能幫助到你 :)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM