2016-09-05 163 views
1

我有一個數據透視表laravel有一些額外的數據。Laravel數據透視表值驗證

我一直在環顧四周,無法找到一個驗證數據的機制,缺少自己寫的一個。但是,如果已經存在一個,那將會重新發明輪子。

任何想法如何我可以將laravel驗證應用到數據透視表以及?

謝謝!

+0

你想應用什麼驗證?像獨特? – jaysingkar

回答

0

Laravel的Validator將字段和規則檢查爲簡單關聯數組。你apply他們完全喜歡錶單數據。因此,可以考慮這樣的邏輯:

$user = App\User::find(1); 

foreach ($user->roles as $role) { 
    $field = array('rolename' = > $role->pivot->name); 
    $rule = array('rolename' => 'required|alpha'); 

    $validator = Validator::make($field, $rule); 

    if ($validator->fails()) { 
     // Handle the validation error... 
    } 
} 

我看到2個問題,通過這種方法,雖然:首先,驗證在一個循環中,如果你需要驗證大量的支點條目,這可能是一個性能問題上運行。其次,我真的認爲你應該在之前驗證數據庫中的數據庫

可能有一種方法可以一次獲得所有的透視條目,沒有循環,但我不確定那個。