2016-04-12 49 views
1

Ben argümanları olarak Laravel Validator koymak Bu diziler de dizi indeksi almak için:doğrulama mesajının laravel 5.2

['item.*' => 'string'] // rules 

['item.*.string' => 'Item number (index) is not string'] // messages 

Ben doğrulama mesajında ​​index number olmasını istiyorum. Yukarıdaki kod sadece gösterim içindir ve çalışmaz. Bu nasıl yapılır?

cevap

5

mesajı Bunun sana yardımcı olacağını düşündüğümüz

'name.*.required' => 'The :attribute is required'  
    'name.*.value.required' => 'The :attribute is required'  

olacak bu deneyin veya bu

'name' : [ { 'value' : 'raju' } , { 'value' : 'rani'} ]  

kullanabilir ve

'name.*' or 'name.*.value' => 'required|string|min:5'  

bunu doğrulamak ..

Bunu deneyin,

public function messages() 
{ 
    $messages = []; 
    foreach ($this->request->get('name') as $key => $value){ 
     $messages['name.'. $key .'.required'] = 'The item '. $key .' is not string'; 
    } 
    return $messages; 
} 
+0

Peki iletide görüntülenecek dizine ihtiyacım var. Bu sadece özellik adını görüntüler. – Fusion

+0

@Fusion Sanırım, The: öznitelik yeri name.0, name.1 ve etc verecek, Yani, bu ihtiyaç için yeterli değil. –

+0

@Fusion { "name.0": [ "öğe numarası name.0 bir dizgi değil." ] } Bu sizin bilginiz için benim çıkışımdır. –