devise 소개 참고

2466 단어 Railsdevise

devise 소개 노트



devise의 도입시의 흐름을 간단하게 메모

흐름


  • Gem 설치
  • 플래시 메시지 추가 (날려도 OK)
  • devise View 파일 설치
  • User 모델 만들기
  • Users 테이블 만들기
  • 헤더 숨기기 (날려도 괜찮습니다)

  • 참고 devise 공식 GitHub

    1. Gem 설치



    Gemfile에 devise gem 추가
    gem 'devise'
    
    $ bundle install
    

    devise 설치
    $ rails generate devise:install
    

    2. 플래시 메시지 추가(날려도 OK)


    <% if flash[:notice] %>
       <div class="alert alert-info">
         <%= flash[:notice] %>
       </div>
     <% end %>
     <% if flash[:alert] %>
       <div class="alert alert-danger">
         <%= flash[:alert] %>
       </div>
    <% end %>
    

    3. devise View 파일 설치


    $ rails generate devise:views
    

    4. User 모델 만들기


    $ rails g devise User
    

    routes.rb에 devise 라우팅 추가

    routes.rb
    devise_for :users
    

    5. Users 테이블 만들기



    방금 모델을 만들었기 때문에 테이블 만들기
    $ rails db:migrate
    

    이 시점에서 devise의 도입은 완료! !
    가입 또는 로그인 페이지로 이동하면 페이지가 표시됩니다.

    6. 헤더 숨기기 (날려도 OK)



    devise를 도입하면 몇가지 devise의 헬퍼 메소드를 사용할 수 있게 되기 때문에
    그 중 하나를 사용하여 로그인하지 않은 사용자에게는 헤더를 숨깁니다.

    헤더가 여러 페이지에 표시된다고 가정하여 partial화된 경우
    render하고 있는 마지막에 「if current_user」를 추가.
    <%= render 'partial/header' if current_user %>
    

    이렇게 하면 "current_user"가 로그인되어 있는지 여부를 조건식이 확인하여 헤더를 표시/숨깁니다.

    참고 devise계
    devise 공식 GitHub
    Rails devise에서 사용할 수 있게 되는 헬퍼 메소드 일람
    devise에 username 열을 추가하여 username을 등록할 수 있도록 합니다.

    좋은 웹페이지 즐겨찾기