2012-12-30 2 views
1

이것은 아마도 간단한 수정 일 수는 있지만 작동 확인을받을 수 없습니다.오류를 표시하지 않는 Laravel 유효성 확인

$input = array(
     'name' => '' 
    ); 

    $rules = array(
     'name' => 'required|min:3|max:50|alpha' 

    ); 

    $v = Validator::make($input, $rules); 

그리고 심지어 '이름'이 필요하고 다른 오류를 포함하지 않는 검증 규칙 모두 가지고있다하지만 난 다시이 내 테스트를 단순화했습니다

....

dd($v->errors); // returns NULL 

그러나

dd($v->fails()); // returns bool(true) 

왜 오류 메시지가 없는지? 전체 $ v 객체를 덤프하면 아무 곳에서나 볼 수있는 메시지가 없습니다. 매우 혼란스러워 ... 감사합니다. 감사.

---- 수정

저는 이것을 더욱 단순화했습니다. 나는 ... 테스트 할 수있는 뷰에서 직접

<?php 

$input = array(
    'name' => '' 
); 

$rules = array(
    'name' => 'required' 
); 

$v = Validator::make($input, $rules); 

dd($v); 

?> 

나는 아직도 정확히 같은 문제를 얻을 이것을 넣었습니다? 여기

object(Laravel\Validator)#32 (9) { 

    ["attributes"]=> 
    array(1) { 
    ["name"]=> 
    string(0) "" 
    } 
    ["errors"]=> 
    NULL 
    ["rules":protected]=> 
    array(1) { 
    ["name"]=> 
    array(1) { 
     [0]=> 
     string(8) "required" 
    } 
    } 
    ["messages":protected]=> 
    array(0) { 
    } 
    ["db":protected]=> 
    NULL 
    ["bundle":protected]=> 
    string(11) "application" 
    ["language":protected]=> 
    NULL 
    ["size_rules":protected]=> 
    array(4) { 
    [0]=> 
    string(4) "size" 
    [1]=> 
    string(7) "between" 
    [2]=> 
    string(3) "min" 
    [3]=> 
    string(3) "max" 
    } 
    ["numeric_rules":protected]=> 
    array(2) { 
    [0]=> 
    string(7) "numeric" 
    [1]=> 
    string(7) "integer" 
    } 
} 

이 끊어 내 설치/설정에서 뭔가는 $ v 오브젝트인가?

+0

이 코드는 어디에 있습니까? 규칙은 공개되어 있습니까? – Ted

+0

컨트롤러에 있습니다. public function post_new() – markstewie

+0

그냥 줄이기 위해 노력하십시오. – Ted

답변

3

오류가 발생하기 전에 검사기를 테스트해야합니다. 이 시도 :

if ($v->fails()) { 
    dd($v->errors); 
} 
+0

나는 쉬운 대답 일 줄 알았어! 매우 감사합니다! – markstewie

+0

내 기쁨. 가장 좋은 방법은 컨트롤러에 규칙이없는 것입니다. 모델에서 공용 정적 배열로 고정하십시오. 유지 관리가 더 쉽습니다. 규칙이있는 양식 클래스도 많이 사용됩니다 (각 양식에 하나씩). – Ted

2

을 당신이 실제로 당신의 유효성 검사 규칙을 평가하고 오류를 생성하기 위해, $v->passes 또는 $v->fails 처음 호출 할 필요가 있다고 생각합니다. 그렇다면 ...

dd($v->errors->all()); 
관련 문제