[Rails] 오류 메시지 표시 - render, redirectto의 차이, flash-

2356 단어 초학자RubyRails
잘못된 정보를 쓰는 디스플레이 방법입니다.
Rails에서 메시지를 출력할 때 자주 사용하는 render, redirectto,flash에 대해서도 간단하게 쓰세요.

이루고 싶은 일.


폼 입력 값이 잘못되었을 때 다음과 같은 오류 정보를 표시합니다

실제 부호


login_controller.rb

    @error_txt = '※入力に誤りがあるか、登録されていません。'
    render :new
실례 변수 @error_txt 에서 오류 메시지를 설정하고render에 템플릿 new를 표시하도록 지정합니다.
※ 오판처리 생략
new.html.slim

    - if @error_txt
        p.error
            = @error_txt
템플릿 측면에서 실례 변수@error_txt의 값을 검사하고 있으면 @error_txt를 표시합니다.

이른바 렌더


render는 템플릿을 지정하고 표시하는 방법입니다.
화면을 전환하지 않아도 바로 표시할 수 있다.

redirect_to와의 차이


render와 같은 페이지로 표시하는 방법에서redirect있다
render에서 화면 이동을 하지 않고 지정한 템플릿을 표시합니다
redirect_to 방법은 URL이 브라우저에 요청하고 보내는 명령을 지정하는 방법입니다.
브라우저는 이 명령에 따라 지정한 URL을 서버에 다시 보냅니다.
브라우저와 서버 간의 교환과 처리가 증가했기 때문에 다시 요청을 보낼 필요가 없는 경우render를 사용하는 것이 좋습니다.
이번에는 폼의 입력 내용에만 잘못된 정보를 표시합니다. 방향을 바꾸고 싶지 않기 때문에render를 사용합니다.

이른바 플래시


rails에 대한 정보에 따르면 플래시에 대한 보도가 많습니다.
flash는session의 기능 중 하나를 이용하여 화면에 정보를 표시하는 방법이다.
플래시에 설정된 메시지가 세션에 저장되며, 방향을 바꿔도 유지됩니다. 따라서 Redirectto 방법을 같이 사용하는 경우가 많아요.
이번에render를 사용했습니다. 방향을 바꾸지 않았고 세션에 값을 유지할 필요가 없어서 플래시를 사용하지 않고 실례 변수를 사용했습니다.

총결산

  • 방향을 바꿀 필요가 없는 오류 메시지는render와 실례 변수로
  • 리디렉션이 필요한 경우 redirectto와 flash로 설치
  • 좋은 웹페이지 즐겨찾기