본문 바로가기
Laravel/코지코더

코지코더 - 라라벨 15. 폼 Validation

by SKim입니다 2020. 6. 7.

Validation

title 또는 body를 안 쓰고 Submit하게되면 에러가 뜬다.

 

 

 

 

title과 body는 NULL이 허용되지 않는 필수 필드로 세팅했기 때문이다.

 

(1) JavaScript로 하는 방법이 있고

(2) Server에서 하는 방법이 있는데

둘 다 해주는 게 좋다.

 

(1) JavaScript로 하는 방법

여기에 required

 

여기도 required

 

 

 

(2) Server에서 하는 방법

서버에서 POST request를 보낸다.

21행 괄호 안을 지우고

23, 24행을 저렇게 바꿔도 똑같다.

 

또는 이렇게 해도 똑같다.

 

이렇게 하고 (1)을 적용하지 않았을 경우,

'이 입력란을 작성하세요'라는 메시지는 뜨지 않고

Submit을 눌러도 쓴 글이 지워지면서 새로고침 효과만 있다.

 

 

 

여기에 에러 메시지를 띄우는 방법을 알아보자.

((1)의 required는 지웠다.)

 

아래쪽에 에러가 뜬다.

이거는 실험용이었으니 지우고

 

input 밑에 @error를 추가하고

br을 밑으로 보낸다.

body도 똑같이 적용

 

 

 

이것도 해보겠다.

 

https://laravel.com/docs/7.x/blade#validation-errors

 

Blade Templates - Laravel - The PHP Framework For Web Artisans

 

laravel.com

 

이렇게 하면 에러 메시지도 뜨고

해당 칸의 border가 빨갛게 변한다.

 

 

 

 

(1)(프론트엔드)과 (2)(서버에서 돌려보낸다.)를 동시에 적용하면

기본적으로는 아래와 같이 뜨고,

 

(서버로 한 번 보낼 때마다 요청을 하므로

보내기 전에 자바스크립트로 못 가게 하는 것이 좋다.)

 

누군가가 여기서 required를 지워버리고 글을 쓰려고 시도하면

(2)가 나오게 된다.

 

 

 

 

 

이번에는 업데이트에도 적용해보겠다.

 

 

선택한 부분을 복사해서 update에 붙인다.

 

 

 

이 두 부분을 복사해서 edir blade 파일에 붙여넣는다.

 

 

required도 넣어준다.

댓글