Jumat, 16 Maret 2018

Seri Belajar Ruby on Rails Bagian 9 - Membuat Autentikasi dengan Devise

Setelah pada artikel sebelumya kita telah berhasil membuat validasi, relasi, dan menggunakan scope pada Rails, selanjutnya kita akan membuat fitur autentikasi  dengan menggunakan  Devise.

Devise ? Untuk  apa  ?

Devise  adalah salah satu gem pada  Rails yang berfungsi untuk menangani masalah autentika dengan mudah. Devise memiliki kelebihan sebagai  berikut.
  • Rack based
  • Lengkap dengan  Model, View, dan Cotroller
  • Megizinkan suatu aplikasi untuk memiliki multiple model untuk melakukan  autentikasi
  • Dibuat secara modularitas, sehingga memudahkan penggunaan gem ini dengan hanya menggunakan fitur/module yang dibutuhkan.
Gem ?.  Apa itu gem ?. Pada Rails terdapat file konfigurasi yang digunakan untuk me-list gem mana saja yang diguakan. Gem ini seperti library atau perpustakaan yang biasanya dapat ditemukan di RubyGems. 

Cara Menambahkan Gem Devise pada Rails

Untuk menginstall devise ini dapat dilakukan dengan membuka Gemfile pada folder aplikasi. Misalnya, saya akan meggunakan devise untuk aplikasi homework_management

Letak Gemfile pada Project
Tambahkan script berikut pada Gemfile.
gem 'devise'
dan pada terminal pindah ke folder project yang digunakan, dan jalankan perintah berikut.
bundle install

Mengatur Gem Devise pada Project

Jalankan perintah berikut pada terminal
rails generate devise:install
Perintah tersebut akan menghasilkan file konfigurasi pada folder config/initializers/devise.rb.

Konfigurasi Devise

Pastikan bahwa konfigurasi default url options pada environtments files telah dibuat. Untuk mengatur default url options, buka file environtment pada folder config/environtments/development.rb. 
config.action_mailer.default_url_options = { host: 'localhost', port: 3000 }
end
sebelum keyword end. 

Lalu buka file application.html.erb yang terletak pada folder app/views/layouts/ dan tambahkan baris berikut.
tepat di atas  
<%= yield %>

Konfigurasi User Model

Selajutnya  kita akan membuat user model,  dimana model ini berfungsi untuk menyimpan data-data user. Untuk pembuatan user model ini akan diintegrasikan dengan devise. Caranya  adalah  pada terminal jalankan perintah berikut.
rails g devise user
Dengan menjalankan perintah tersebut, maka akan menghasilkan file migrasi user dan model user.



Setelah itu jangan lupa untuk menjalankan perintah 
rake db:migrate
untuk memproses file migrasi yang telah dibuat.

Setelah melakukan generate devise maka pada file config/routes.rb akan mengalami perubahan. Perubahan tersebut adalah sebagai berikut.
Coba jalankan perintah berikut pada terminal dan lihat url apa saja yang dihasilkan dari men-generate devise
rails routes


Membuat User untuk Pertama Kali

Langkah selanjutnya, kita akan melakukan modifikasi pada view untuk menampilkan link login dan register ketika pertama kali membuka halaman http://localhost:3000/

Untuk membuat user, jika perintah tadi telah dilakukan dengan benar maka untuk mendaftarkan user tinggal buka url http://localhost:3000/users/sign_up. Halaman tersebut adalah halaman untuk membuat/registrasi user.

Halaman Registrasi User



Modifikasi View


Langkah selanjutnya, kita akan melakukan modifikasi pada view untuk menampilkan form login ketika pertama kali membuka halaman http://localhost:3000/


Yang pertama akan kita lakukan adalah membuat navigasi yang akan muncul di setiap halaman. Navigasi ini untuk mengetahui informasi mengenai user login dan link untuk logout. Navigasi ini akan dibuat secara parsial. Perlu diingat, penamaan untuk file parsial harus diawali dengan tanda "_" (underscore).
Lalu, pada bagian atas pada tipa view yang membutuhkan login kita tambahkan script berikut. Contohnya pada halaman tambah data homework.

Modifikasi Controller


Selanjutnya, kita perlu melakukan modifikasi pada controller. Yang harus dilakukan adalah tambahkan script berikut pada application_controller.rb yang terletak pada folder app/controllers.

Sekarang coba jalankan kembali project dengan cara menjalankan perintah berikut pada terminal. lalu lakukan restart terhadap server terminal

Langkah-langkah di atas adalah salah satu cara untuk penggunaan gem devise pada project Rails. Gem "DEVISE" ini sangat berguna untuk menangani autentikasi di Rails dengan segala kemudahan yang diberikannya.

Sekian untuk pembelajaran kali ini mengenai penggunaan "DEVISE". Diharapkan tutorial ini menjadi salah satu pembelajaran yang mudah dimengerti bagi kita semua.


Fathara Annisa Azka | C-aio Indonesia

Senin, 05 Maret 2018

Seri Belajar Ruby on Rails Bagian 2 - Cara install Ruby on Rails di Windows


Install Ruby on Rails di Windows dengan Rails Installer 


Untuk menggunakan framework Ruby on Rails versi 3 ke atas, seminimalnya inilah yang harus anda install:
  1. Ruby 
  2. RubyGems
  3. Rails Gem
  4. Bundler Gem
  5. Devkit
  6. Database ( Mysql / Sqlite / Sql Server / Postgree / dll )
Anda bisa install semua software tersebut secara terpisah dengan download installer nya satu persatu. Jika anda pertama kali install Ruby on Rails, Kami sarankan untuk menggunakan package dari RailsInstaller karena sangat mudah dan praktis dan tentu saja gratis :-) . Selain untuk windows, Rails Installer ini juga tersedia untuk OS X.

Langkah - langkah installasinya sebagai berikut:

1. Download Source Rails Installer

Download railsinstaller dari: http://railsinstaller.org/en 
 



2. Jalankan Rails Installer
    
Klik 2x pada source Rails Installer yang sudah Anda download. 



Baca Aggrement dengan seksama, kemudian jika Anda setuju, klik pilihan 
I accept all of the lincenses dan klik tombol Next >

3. Atur Path untuk Rails Installer

Rails Installer akan menanyakan lokasi penyimpananhasil installasi Rails Installer.
Jika Anda sudah setuju untuk menyimpan hasil installasi sesuai
dengan default pada windows diatas, maka klik tombil Install, 
jika ingin merubah lokasinya silakan ubah pada text box yang disediakan.

 


 Tunggu proses instalasi hingga selesai.

4. Testing Installasi

Setelah intallasi selesai, maka pastikan untuk cek hasil installasi anda benar dengan membuka Command Prompt dan menjalankan perintah: 


ruby -v

rails -v

gem -v




 Notes: 
Versi Rails Installer yang kami gunakan mungkin berbeda dengan Anda, karena itu
             versi yang akan muncul di command prompt Anda mungkin berbeda.

Jika hasil di cek installasi tidak ada error, maka sekarang Anda sudah bisa belajar ruby on rails lebih mendalam dan dapat mencobanya langsung.

Jika kamu mendapat error "the system cannot find the path specified" ikuti langkah - langkah berikut :
     
  1. Cobalah buka pada folder/path dimana Rails telah terinstal. Pada tutorial proses instalasi dilakukan di C:/RailsInstaller/Ruby2.3.3, buka folder tersebut. 

         Cari batch file bernama rails dan bundle


    penunjukan file rails.bat
     penunjukan file bundle.bat

  2. Lalu rubah baris code @"C:\Users\emachnic\GitRepos\railsinstaller-windows\stage\Ruby2.3.3\bin\ruby.exe" menjadi @"%~dp0ruby.exe" seperti di bawah ini.
    Pada file rails.bat
    @ECHO OFF
    IF NOT "%~f0" == "~f0" GOTO :WinNT
    @"%~dp0ruby.exe" 
    "C:/Users/emachnic/GitRepos/railsinstaller-windows/stage/Ruby2.3.3/bin/rails" 
    %1 %2 %3 %4 %5 %6 %7 %8 %9
    GOTO :EOF
    :WinNT
    @"%~dp0ruby.exe" "%~dpn0" %* 
    Pada file bundle.bat
    @ECHO OFF
    IF NOT "%~f0" == "~f0" GOTO :WinNT
    @"%~dp0ruby.exe" 
    "C:/Users/emachnic/GitRepos/railsinstaller-windows/stage/Ruby2.3.3/bin/bundle" 
    %1 %2 %3 %4 %5 %6 %7 %8 %9
    GOTO :EOF
    :WinNT
    @"%~dp0ruby.exe" "%~dpn0" %* 
  1. Setelah langkah di atas dilakukan, lakukan pengecekan ulang dengan menjalankan perintah ruby -v, rails -v, dan gem -v pada Command Prompt.

Fathara Annisa Azka | C-aio Indonesia