Tutorial RESTful API dengan Ruby on Rails 4 + MySQL — PART 1 (Read)

Belajar RESTful API pake Ruby on Rails v4 dengan Database MySQL bagian Read — PERHATIAN TUTORIAL INI BAKALAN BANYAK TEKS JADI PASTIKAN SABAR BACANYA HEHEHE

Hudya
5 min readSep 19, 2018

Hello folks! Kembali lagi dengan saya Kiddy di Blog yang antah berantah tempat saya menulis curhatan saya sebagai Programmer.

Jadi waktu itu gue pengen banget belajar Ruby on Rails karena menurut gue ini bahasa + framework yang mantap untuk Backend, nah permasalahannya adalah gue nyari-nyari di Internet (Karena aq sobat misqueen tidak mampu bayar 10$ lebih di Udemy) kok engga ada tutorial yang nyangkut sama kepala gue, selain itu penjelasannya juga kurang praktis dan bakalan ngebingungin buat newbie kaya gue yang baru belajar RoR.

Oke untuk part kali ini gue bakalan ajarin cara membuat RESTful API dengan salah satu framework bahasa Ruby yaitu Rails atau yang biasa dikenal dengan Ruby on Rails anjayy. Kalo menurut gue framework Rails ini bisa dibilang cukup mudah strukturnya, bagi yang pernah jajal python pake flask atau django pasti gak asing lah sama ini strukturnya si Rails.

Tapi kalo dari segi code gue bilang ini cukup mudah, kenapa gitu? karena Ruby ini udah berbasis MVC jadi segala urusan query itu udah di handling sama si Model dan kita cuma mainin di model aja kalo ada satu table berkaitan dengan yang lain dengan belongs_to atau has . Ya yang biasa main sama model dan udah paham logika kaya gini sih pasti akan mudah banget pas nyentuh Ruby on Rails.

Ruby digunakan oleh Github, Shopify, Zendesk dkk

Nah Ruby ini juga dipake oleh Github dkk loh guys!

Ohiya tutorial ini gue baca dari guidenya langsung. So, kalo ada yang kurang lengkap mohon ditanyakan di komen aja, siapa tau gue bisa coba kulik lagi hehehe.

Rails ini berstruktur default MVC (Model Piuwww (View) Controller), ya maklum aja sih MVC ini emang the most of Design Pattern which used by a lot of developers lol 😂

Di tutorial ini gue gaakan ngajarin cara nginstall Rails di Windows. Karena gue gapake windows (gue pake Ubuntu 😎). Bagi yang anak Windows bisa coba dibawah ini:

  1. http://blog.teamtreehouse.com/installing-rails-5-windows
  2. http://www.belajarrubyonrails.com/2012/07/install-ruby-on-rails-di-windows-dengan.html

Nah kemudian, bagi kalian yang sudah berhasil menginstall Rails pastikan kalian sudah bisa menggunakan command ini saat nge build.

rails new ContactProject --api -d mysql

Fungsinya apa? kita akan ngebuat Project dengan Ruby on Rails khusus API menggunakan database MySQL

Buat yang pake Ubuntu, pastikan kalian menginstall mysql2 (package library untuk koneksi ke mysql) dengan cara:

sudo apt-get install libmysqlclient-devsudo gem install mysql2

kalo kedua command tersebut masih aja error dan gabisa pas ngebuild project baru, gue kasih command sakti

sudo apt-get install ruby-mysql2

Buat yang windows coba browsing sendiri atau baca ini

Oke lanjut!

Setelah berhasil jalanin command untuk build project diatas ayo kita mulai!

Kita setting dulu lah database kita, pergi ke config -> database.yml dan setting db kalian

Sekarang, kita akan buat model Users. Ketik command dibawah

rails generate model Users

Nah kalo berhasil akan muncul file baru di db -> migrate -> nama migration.

Silahkan disamain aja isi fungsi dara table users, kita akan ngebuat 3 kolom. Kolom nama, kolom pekerjaan, dan timestamps yang isinya biasa (created_at sama updated_at).

class CreateUsers < ActiveRecord::Migration
def change
create_table :users do |t|
t.string :name
t.string :phone
t.timestamps null: false
end
end
end

Kalo udah ok langsung aja kita migrate dengan cara

rake db:migrate

Nah langsung bisa di cek tuh di database kalian muncul gak table users.

Sekarang kita akan buat controller, masukin fungsi dibawah ini.

rails generate controller home

Kalo udah akan muncul satu controller baru di folder controllers dengan nama home_controller.rb

oke mantul banget! Berarti kita udah siap ngoding banget nih HAHAHA

buka app -> controllers -> home_controller.rb

class HomeController < ApplicationControllerend

Ini adalah default dari class kalian, sekarang kita akan coba untuk get Data

Untuk kali ini gue pake gambar ya biar kalian kebiasaan nulis 😮

buat satu method baru kasih nama index

Lalu buat lagi satu method bernama show

Sekarang pindah ke folder config -> routes.rb dan buat routes baru

# Example of regular route:
# get ‘products/:id’ => ‘catalog#view’
get ‘users’ => ‘home#index’
get ‘users/:id’ => ‘home#show’

Simple banget ya cara ngebuat routesnya? Ini masih dasar banget dan masih ada banyak cara untuk ngebuat routes unik di Ruby on Rails.

Sekarang coba isi data kalian secara manual dan jalankan server Ruby dengan cara

rails s

Tunggu sampe dapet gambar dibawah ini

Kalo udah dapet tulisan diatas berarti ruby udah bisa di start nih gan!

Yuk mareee akses localhost:3000

Nah ini tampilan defaultnya. Berarti RoR agan udah jalan.

Sekarang buka postman agan-agan sekalian dan jalanin routes yang udah kita buat yaitu users

Chakeppp ane udah berhasil nih untuk get data.

Sekarang testing get by id yaitu dengan tambahin /{id} agan.

chakep gak tuh! Sekarang kita akan coba kalo id nya gaada. Kalo di Database saya gaada ID nomor 2 dan 4 karena udah saya delete.

Mantap toh enak toh? Daripada belajar ngulik Ruby sendiri pusing mendingan tak bantu toh mantap toh enak toh? Hayo mau kemana~

Sekian dari ane ya gan~ Semoga bermanfaat selalu ilmunya!
Jangan lupa untuk membagikan ilmu agan-agan sekalian karena ilmu tersebut akan ditanya di akhirat nanti sama Tuhan agan, kecuali agan atheis~

--

--

Hudya
Hudya

Written by Hudya

Which is more difficult, coding or counting? Not both of them, the difficult one is sharing your knowledge to people without asking the payment.

No responses yet