我很難找到我的問題的答案,而我的測試沒有證明是有用的。所以也許這裏有人會遇到我面臨的同樣的問題。Laravel 5.4:動態驗證規則
我有以下種圖案名稱輸入projects-0-1
,project-0-2
,project-1-0
等等...... 這些文件輸入,使人們可以上傳文檔和/或圖像。
所以基本上,我一直試圖讓會(理想)是類似的東西驗證消息:
$validator->getMessageBag()->add('project-*-*', 'File is empty!');
OR
$validator->getMessageBag()->add('project-*', 'File is empty!');
我試了幾件事情已經和似乎沒有任何工作。
我得到添加自定義消息的原因是該文件僅在$request
對象爲空時根本未驗證。所以我首先需要檢查$request->hasFile
是否和我不想添加錯誤信息。
需要考慮的事情:
輸入可動態添加到形式,所以我不知道我需要事先驗證文件輸入的確切人數。
即使這不應該影響代碼和驗證,值得注意的是,當我將表單嵌入到另一個網站時,所有事情都是通過ajax發生的。因此我創建了端點等...
任何提示?
你試過像這個''file。*。mimes'=>'只允許PDF,JPEG,PNG。','https://stackoverflow.com/a/45188623/5148479 – Hari
是的,我嘗試了所有爵士樂,它並沒有幫助。我沒有驗證本身的問題,但是當它們不是請求的一部分時,將錯誤消息與文件輸入相匹配,因爲當表單提交時它們保持爲空。 – daneczech
我基本上需要的是把一個通配符輸入名字在我的規則陣列: '$ globalRules = [ ... 'project_documents-0-0'=> '需要|文件', ... ]' 我希望最後的規則,能夠在破折號後0-9之間匹配任意數量的.. 因此,我認爲這樣的事情會做: '「project_documents - * - *」 => 'required | file','但的確不是。 – daneczech