저는 Laravel을 배우기 시작했고 여전히 학습 곡선에 서 있습니다. 이제 Laravel 3부터 시작하겠습니다 만, 일단 프로젝트가 작동하면 Laravel 4로 프로젝트를 전환 할 것입니다. 이제 체크 상자 배열의 유효성을 검사하는 방법에 대해 질문합니다. 그룹 내의 1 개 이상이 활성화 (선택)되어 있는지 확인하고 싶습니다. Laravel 포럼에서 어딘가에 필수 항목을 사용하여 유효성을 검사했다고 읽었지만 dd(input::all())
입력란과 체크 상자가 표시되지 않습니다.Laravel 3 - 체크 박스 배열의 유효성을 검사하는 방법을 적어도 1 개 확인 했습니까?
일부 내 블레이드 생성 코드
이<label class="checkbox">{{ Form::checkbox('changeReasons[]', 'ckbCRCertification', Input::had('ckbCRCertification'), array('id' => 'ckbCRCertification')) }} Certification</label>
<label class="checkbox">{{ Form::checkbox('changeReasons[]', 'ckbCRDesignCorrection', Input::had('ckbCRDesignCorrection'), array('id' => 'ckbCRDesignCorrection')) }} Design Correction</label>
내 컨트롤러 (REST) 코드는 다음과 같습니다 : 체크 박스에 대한
public function post_create()
{
print "Inside the post_create()";
// validate input
$rules = array(
'ecoNo' => 'min:4',
'productAffected' => 'required',
'changeReasons' => 'required'
);
$validation = Validator::make(Input::all(), $rules);
if($validation->fails())
{
return Redirect::back()->with_input()->with_errors($validation);
}
$eco = new Eco;
$eco->ecoNo = Input::get('ecoNo');
$eco->productAffected = Input::get('productAffected');
$eco->save();
return Redirect::to('ecos');
}
나는 또한 검증이 실패 후 체크 박스 상태를 얻기를위한 올바른 코드를 알고 싶어, 나는 내가 Input::had(checkBoxName)
을 보았다고 생각 어딘가에 있지만 그렇지 않습니다. 작동하는 것처럼 보입니다. 아마도 올바르게 사용하지 않을 것이고 모든 예제가 입력과 그 밖의 것에 대한 것이기 때문에 약간 혼란스러워 할 것입니다. L4에서 유효성 검사가 거의 같다고 가정합니다.
또는'Input :: get ('foo', 0); –
과 같은 기본 폴백을 사용할 수 있습니다. 그렇지만 어떻게하면 내 'Validator' 체크에 이것을 사용하고'return redirect : : back() -> with_input() -> with_errors ($ validation);'가능하면 입력과 동시에 반환 할 수없는 여분이 아니라 내 유효성 검사의 일부가되기를 원합니다. – ghiscoding
왜 이런 방식으로 사용하는지 이해하기 시작했습니다. 이제 작성한 코드는 하나의 체크 박스 이름으로 작동하지만, 제 경우에는 배열 배열을 사용합니다. 그래서 체크 박스의 코드를 한 번만 살면 어떻게 되나요? 나는'Input :: get ('changeReasons [ckbCRCertification]', 0)'과 같은 것을 시도했지만'get'은 단일 키에서만 작동하고 배열에서는 작동하지 않기 때문에 작동하지 않습니다.그러면 내 체크 박스가 활성화되었는지 여부를 어떻게 알 수 있습니까? – ghiscoding