초보자를 위한 루비온 레일스 해설] ~ 플래시 설치~

6389 단어 RubyRails

개시하다


이번에는 예전 기사의 계속이다.
가능하다면 이전의 보도를 보십시오.
이번에는 플래시를 총괄해 봅시다.
초보자를 위한 루비 온 레일스 해설 ①
초보자를 위한 루비 온 레일스 해설 ② 링크 만들기~
루비 온 레일스 ③ 초보자 대상 해설
Ruby on rails 초보자를 위한 설명 ④ ~ 명명 규칙 및 form태그 사용법에 대해서~
⑤~데이터베이스 편집 및 삭제
초보자를 위한 루비온 레일스 ⑥ 발리 데이 프로듀싱~

플래시 램프


구체적인 예를 찾기 위해 트위터에 시도해 봤다.

入力されたユーザー名が~ 부분은 플래시입니다.
플래시는 한 번만 페이지에 표시되며 페이지를 업데이트하거나 다른 페이지로 이동하면 표시되지 않습니다.

이 플래시를 설치해 보세요.

플래시 설치


rails로 플래시를 표시하기 위해 특수 변수 플래시를 준비했습니다.
동작에서 문자열을 변수 flash[:notice] 로 대입하면view 파일에서 사용할 수 있습니다.플래시를 사용하면 자동으로 삭제됩니다.
또한 플래시는 여러 곳에서 통용되며application.html.erb 파일 내에서 사용하기에 편리하다.application.html.erb 파일에 쓰인 내용은 모든view 파일에 공통으로 표시됩니다.
layouts 폴더 아래에 있는 응용 프로그램입니다.html.플래시를 표시할 수 있도록 eb 파일에 다음과 같은 방식으로 기입해 주십시오.
application.html.erb
<% if flash[:notice]%>
  <div class="flash">
    <%= flash[:notice]%>
  </div>
<% end %>
이렇게 하면 플래시가 존재하면 나타난다.
어쨌든 css도 미리 설정하세요.
application.css
.flash {
    background-color: brown;
    color: white;
}
posts 컨트롤러를 다음과 같이 다시 쓰고 오류 정보를 대입합니다 flash[:notice].
posts_controller.rb
def create
  post = Post.new(content: params[:content])
  @content = params[:content]
  if post.save
    flash[:notice] = "投稿に成功しました"
    redirect_to("/posts/all")
  else
    flash[:notice] = post.errors.full_messages[0]
    render("posts/new")
  end
end
post.save 부분이 실패했을 때 post.errors.full_messages 오류 메시지를 목록으로 저장하기 때문에 첫 번째 값을 flash[:notice]에 저장합니다.투고에 성공한 경우 이 뜻을 flash[:notice]에 저장한다.
이렇게 하면 플래시를 설치할 수 있다.
실제로 해보세요.
아래의 new.html.eb 파일을 열어 보세요.한편 발리는 다음과 같다.
new.html.erb
<%= form_tag("/posts/create") do  %>  
  <textarea name="content" cols="30" rows="10"><%= @content%></textarea>
  <input type="submit" value="送信">
<% end %>
post.rb
class Post < ApplicationRecord
    validates :content, {presence: true}
    validates :content, {length: {maximum: 20}}
end

어떤 수치도 입력하지 않은 상태에서 발송 버튼을 눌러 보세요.인증에 팝업되고 오류 정보는 flash[:notice]에 저장됩니다.

이어서 20개 이상의 문자를 입력하고 발송을 누르세요.다음 오류 메시지가 표시됩니다.

이번에는 투고에 성공한 상황을 시험해 보았다.아래와 같다.

잘 됐네.

끝맺다


이번 보도는 여기까지입니다.
만나줘서 고마워요.

좋은 웹페이지 즐겨찾기