Lombok
1
core MVC 이용해서 자그만한 게시판 개발중인데요
웹에서 컨트롤러로 제목, 내용을 넘겨서 컨트롤러에서 값을 검증 한 후 DB에 INSERT하는 로직인데
검증 과정에서 왜 false가 나오는지 이해할 수 없습니다.
ModelState.IsValid(); 없으면 정상적으로 INSERT 되기는 하는데 이유가 뭘까요?
요건 컨트롤러
요건 모델
요건 웹에서 값을 보냈을때
그 값으로 벨리데이션 했을 때 false가 리턴
선배님들 도와주십쇼 … fk설정이 잘못된건지 EF를 잘못쓰고 있는건지 길이 안보입니다 ㅠㅠ
1 Like
Stupid
2
검증하는 부분이 어디에 있나요? => (ModelState.IsValid)
자동으로 되는 걸까요?
1 Like
올려주신 캡쳐만 보았을땐 딱히 문제는 없는거 같은데
혹시 User테이블에 PK 1 데이터로 실제 User 데이터가 존재 하나요?
(두 테이블이 정상적으로 관계설정이 되어 있고 모델 IsValid 체크를 안했을때 제대로 INSERT 된거라면 실제 User 데이터가 존재하는게 맞겠지만요., 혹시나 해서 답변 달아 보았습니다.)
1 Like
Lombok
4
첫 번째 사진에 보시면 if(ModelState.IsValid){} 요기 있습니다.
검사 조건은 두번째 사진에 어노테이션 걸어준 내용이라고 알고있습니다 !
1 Like
Lombok
5
네넵 … 값이 존재하기도 하고 관계설정도 되어있는데 저렇게 나오네요
1 Like
아 혹시 뷰 쪽에서 User를 계속 들고서 같이 넘기나요?
올려주신 마지막 캡쳐본 Model 유효성 체크 키중에 User이 있는게 조금 이상한거 같아서요
1 Like
Lombok
8
아뇨 3번째 사진 빨간박스처럼 타이틀, 컨텐츠는 입력받아왔고 UserNo는 서버에서 세션에서 끄집어내서 사용하였고 User에 대한 내용은 없는데 저도 그게 의문입니다 왜 Valid에서 User가 걸리는건지 …
1 Like