나는 Kohana를 사용하고 있습니다. 그러나 나는이 질문이 좀 더 일반적이라고 생각합니다.MVC 프로젝트에서 폼 유효성 검사가 어디에서 발생해야합니까?
컨트롤러에서 양식 유효성 검사를 수행하고 있으며 지금까지 잘 작동했습니다. 하지만 최근에는 문제가 생겼습니다.
나는 의견 모델을 가지고 있으며, 몇 가지 다른 컨트롤러의 의견을 의견으로 보냅니다. 모든 컨트롤러에 유효성 검사기가있는 대신 모델에 배치했습니다.
- 하나 개의 장소/변경
- 내가 분명히 성공 또는 실패를 반환해야하기 때문에이 짜증 유효성 검사 규칙 (DRY)
를 추가 할 수 있기 때문에
이
은 중대하다 컨트롤러에 전달하고 Kohana의 유효성 검사 라이브러리는 배열로 오류를 반환합니다. 그래서 내 복귀는 FAIL 내가 도움이되지만이 잘못 생각할 수 없다array('success' => false, $errors);
성공
array('success' => true);
에
것 같습니다. 그것 잘못 생각합니다.
내가 컨트롤러에서 그것을 할 경우, 단순히 (나에게) 더 나은 것 같습니다 어떤
if ($post->validate()) {
doWhatever();
} else {
$this->template->formErrors = $post->errors('form_errors');
}
할 수 있습니다.
더 좋은 방법이 있나요? 컨트롤러 또는 메서드에서 유효성을 검사해야합니까? 내가 미쳤어?
그렇다면 어떻게해야 성공 인덱스를 점검 할 것인가? (Kohona가 아닌, 일반적으로.) –