Membuat User Autentikasi di Ruby on Rails dengan Devise

Sekarang ane mau ngenalin gem devise. Siapa tahu setelah kenal jadi jatuh cinta. Hehehe. Gem devise ini mempermudah kerjaan dalam hal autentikasi user di Rails. Semuanya begitu simpel, jadi kita ga perlu repot lagi nanganin yang namanya login, logout, register, change password dll. Hebatkan ya.

Biar kenal lebih jauh bisa dibaca dokumentasi disini.

Nah langsung aja buka file Gemfile. Input kode dibawah
gem 'devise'
Lalu  di terminal (ctrl+alt+t) karena ane pake linux. Kalo windows di cmd nya ya.
bundle install
rails generate devise:install
Nah tambahin kode dikit di config/environments/development.rb
config.action_mailer.default_url_options = { host: 'localhost', port: 3000 }
Ke terminal lagi . ubah MODEL jadi nama model yang mau dibuat(bisa admin, user, dll asal belum ada aja di routenya)
rails generate devise MODEL
ane pake model user jadi
rails generate devise User
Lalu jangan lupa run migrate
rails db:migrate
Untuk generate view devisenya :
rails generate devise:views
Setelah generate, devise lengkap membuat tampilan loginnya seperti dibawah ini. Ketik localhost:3000/users/sign_in di Url link.
Sebelum login kita signup dulu, isi email dan passwordnya  
Dan Selamat anda berhasil masuk. 
Untuk logout ane tambahin sedikit kode di app/views/layouts/application.html.erb
<div class="collapse navbar-collapse" id="navbarSupportedContent">
  <ul class="navbar-nav mr-auto">
    <li class="nav-item active">
      <% if user_signed_in? %>
       <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
    </li>
    <li class="nav-item">
       <a class="nav-link" href="#">About</a>
    </li>
    <li class="nav-item dropdown">
        <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Blog</a>
          <div class="dropdown-menu" aria-labelledby="navbarDropdown">
            <a class="dropdown-item" href="#">Teknologi</a>
            <a class="dropdown-item" href="#">Contoh</a>
              <div class="dropdown-divider"></div>
               <a class="dropdown-item" href="<%= destroy_user_session_path %>" data-method="delete">Logout</a>
        <% else %>
               <a class="dropdown-item" href="<%= new_user_session_path %>">Login</a>
              </div>
        <% end %>
     </li>
   </ul>
 </div>
 Dan kurang lebih tampilannya seperti ini

Saat klik Logout , flash alert signed out successfully muncul tandanya user telah logout.
Dan itulah kemudahan user autentikasi dengan gem devise. Sepertinya tidak membutuhkan waktu 5 menit untuk membuat login, logout, dll.


  


Share:

No comments:

Post a Comment

RANDOM

3/random/post-list

Popular Posts

Search This Blog

Powered by Blogger.

Cara Install Android di Raspberry PI 4

Android bisa loh diinstal di Raspberry PI 4 karena KonstaKang membangun Lineage OS 16.0 ANDROID 9. Tapi ini belum cocok untuk digunakan seh...

The Magazine

Facebook

Home Ads

Facebook

Random Posts

Recent Comments

Recent Posts

FACEBOOK

About

NEWSLETTER

Get All The Latest Updates Delivered Straight Into Your Inbox For Free!

Popular Posts

Recent Posts