Senin, 19 Maret 2018

Seri Belajar Ruby on Rails Bagian 7 - Memahami ActiveRecord



Setelah sebelumnya telah memahami penggunaan migration, seed, dan cara membuat dummy data, serta perbadaan data dummy dan data master. Pada kali ini kita akan memahami mengenai Active Record.

Active Record adalah library-library ORM yang digunakan pada model di Rails Framework. Model ini yang merupakan M dari konsep MVC pada Rails. Ia bertugas sebagai model yang bertanggungjawab atas data bisnis dan logika. Contoh dari data bisnis ini seperti data orang, data tempat, atau data barang.

Active Record ini jika diimplementasikan merupakan sistem ORM (Object Relational Mapping) pada Rails.

A. Definisi ORM

ORM (Object Relational Mapping) adalah suatu metode/teknik pemrograman yang digunakan untuk mengkonversi data dari lingkungan bahasa pemrograman berorientasi objek (OOP) dengan lingkungan database relasional. 

Secara singkat ORM dapat dikatakan sebagai jembatan yang berfungsi untuk menghubungkan antara OOP dan database relasional.

B. Apa yang Dapat Dilakukan Active Record ?

Active record memiliki kemampuan untuk
  • Merepresentasikan model dan data dari model tersebut.
  • Merepresentasikan hubungan antar model.
  • Menunjukkan hirarki pewarisan dari model yang berelasi.
  • Melakukan validasi data sdebelum data tersebut dimasukkan ke dalam database.
  • Menampilkan operasi database dalam bentuk OOP.

C. Ketentuan Penamaan

Secara default, Active Record memerlukan ketentuan penemaan untuk menentukan mapping dari model dan tabel. Contoh penamaan antara model dan tabel di Rails adalah sebagai berikut. Contoh ini berdasarkan aplikasi yang kita buat dari modul Bagian 5 - Membuat Aplikasi Rails Pertamamu, yaitu aplikasi manajemen tugas sederhana.

Model/Class Table/Schema
Category categories
Homework homeworks

Dari tabel dapt kita ketahui bahwa penamaan dari model dan tabel memiliki aturan  sebagai berikut.
  • Database Table - Ditulis secara plural, jika lebih dari dua kata dipisahkan dengan underscore.
    Contoh
    : homeworks, categories, homework_item
  • Model Class - Ditulis secara singular dengan setiap huruf pertama dari setiap kata menggunakan uppercase
    C
    ontoh: Homeworks, Category, HomeworkItem
Untuk membuat model dan tabel dengan ketentuan penamaan yang benar secara cepat dapat menggunakan generator dengan cara
$ rails generate model Homework

D. Ketentuan Penamaan Schema

Active Record juga menggunakan ketentuan penamaan untuk kolom pada tabel yang digunakan sesuai dengan kegunaan dari kolom tersebut. Ketentuan tersebut adalah sebagai berikut.
  • Foreign keys - Field ini harus diberi nama sesuai dengan nama tabel yag digunakan. Contohnya  item_id, order_id. Field ini akan otomatis dibuat oleh Active Record ketika menentukan hubungan atau relasi antar model.
  • Primary keys - Secara default, Active Record akan menggunakan sebuah kolom integer yang diberi nama id sebagai primary key. Ketika menggunakan Active Record, kolom ini otomatis akan terbuat.

Untuk contoh pemakaian Active Record, kita akan melanjutkan mengerjakan aplikasi manajemen tugas sederhana. Jika sebelumnya kita membuat sistem CRUD menggunakan scaffold, kali ini kita akan membuat sistem CRUD untuk kategori tugas harian tanpa menggunakan scaffold.


E. CRUD menggunakan Active Record tanpa Scaffold

Pada tutorial sebelumnya telah ditunjukkan cara membuat tabel category yang hanya membutuhkan kolom category_namenya saja dengan menggunakan generator. Bagi yang belum tahu bagaimana caranya, lakukan perintah berikut pada terminal.
$ rails generate migration CreateCategories
  1. Karena pada tutorial sebelumnya penggunaan generator hanya untuk membuat migration, maka untuk membuat modelnya akan dilakukan secara manual dengan cara berikut.
    • Buat file baru pada folder app/models dengan nama category.rb, lalu isi script berikut.Ini akan menunjukkan bahwa model Category akan merujuk kepada tabel categories.
  2. Setelah itu, buatlah controller dengan nama categories_controller.rb dan isi dengan script berikut.
  3. Lalu pada routes.rb tambahkan script berikut.Pada script di atas, kita mendaftarkan semua method dari categories_controller.rb menjadi sebuah resource.
Create pada Active Record
Selanjutnya untuk membuat sistem create atau tambah data yang akan kita lakukan adalah
  1. Buat folder pada app/views dengan nama categories dan buat file dengan nama new.html.erb dan _form.html.erb di dalam folder yang telah dibuat.

    Catatan:
    File _form.html.erb kita jadikan parsial. Pada Rails untuk penamaan file parsial harus diawali dengan tanda underscore.

  2. Coba jalankan server dengan menjalankan perintah
    $ rails s
    dan buka url http://localhost:3000/categories/new. Halaman tersebut masih berupa halaman kosong.
  3. Pada file categories_controller.rb tambahkan script berikut.
  4. Pada file _form.html.erb tambahkan script berikut.
  5. Tambahkan script pada file new.html.erb seperti berikut.
Step-step di atas hanya menghasilkan halaman tambah kategori. Coba jalankan kembali url http://localhost:3000/categories/new. Jika step-step di atas dilakukan dengan benar, maka tampilan dari halaman tambah data kategori akan muncul seperti berikut.

Setelah membuat proses untuk menampilkan halaman baru, yang akan kita lakukan selanjutnya adalah untuk membuat proses menyimpan data yang dimasukkan dari halam tersebut.
  1. Pada method create di categories_controller.rb tambahkan script berikut.
    Berikut ini merupakan penjelasan dari script tersebut:
    @category = Category.new(params.require(:category).permit(:name))
    
    Penjelasan:
    • Melakukan instansiasi terhadap model Category, dimana untuk melakukan instansiasi ini memerlukan parameter category.
    • Parameter ini terdapat pada form di new.html.erb. Dan data yang diperbolehkan adalah data name saja.
    respond_to do |format| 
      if @category.save
        format.html { redirect_to "/categories/new", notice: "Category was successfully created." }
      else
        format.html { redirect_to "/categories/new", notice: "Category wasm't successfully created." }
      end
    end
    
    Penjelasan:
    • respond_to do berguna untuk mengeksekusi perintah menyimpan data menggunakan web-service support. Tag ini berguna untuk menampilkan hasil respon dalam format html.
    • Jika data yang ditampung oleh variable @category berhasil disimpan, maka menampilkan text berupa nama kategori berhasil ditambahkan dan kembali ke halaman tambah data
    • JIka tidak berhasil disimpan, akan menampilkan text bahwa nama kategori tersebut tidak berhasil ditambahkan dan kembali ke halaman tambah data.
    Kita lakukan testing, kita coba masukkan data fisika pada text field, seperti berikut.

    Coba klik pada button create category. Jika data berhasil disimpan, maka pada tampilan akan muncul seperti berikut.

Read pada Active Record
Selanjutnya untuk membuat sistem menampilkan semua data kategori yang telah dimasukkan, yang akan kita lakukan adalah
  1. Buat file dengan nama index.html.erb di dalam folder app/views/categories.
  2. Coba jalankan server dengan menjalankan perintah
    $ rails s
    dan buka url http://localhost:3000/categories. Halaman tersebut masih berupa halaman kosong.
  3. Pada file index.html.erb tambahkan script berikut. 
  4. Lalu jalankan kembali url http://localhost:3000/categories di browser. Maka pada halaman tersebut tampilan yang akan muncul adalah sebagai berikut.

    Masih ingat pada modul sebelumnya, yaitu Bagian 6 - Membuat Table & Dummy Data kita melakukan penambahan data pada tabel kategori melalui seeding di Rails. Data tersebut terdiri dari Matematika, Sejarah, Bahasa Indonesia, Bahasa Inggris, Bahasa Jepang, Agama, Kimia, dan Biologi.

    Sedangkan Fisika adalah data yang ditambahkan melalui form.

Yang kita lakukan barulah menampilkan semua data kategori, lalu bagaimana jika kita ingin menampilkan data kategori yang spesifik. Langkah yang dilakukan, yaitu:
  1. Buat file dengan nama show.html.erb di dalam folder app/views/categories. Tambahkan script berikut.
  2. Pada categories_controller.rb method show, tambahkan script berikut.
  3. Coba jalankan server dengan menjalankan perintah
    $ rails s
    dan buka url http://localhost:3000/categories dan klik link show pada salah satu data. Maka pada halaman tersebut tampilan yang akan muncul adalah sebagai berikut



Update pada Active Record
Selanjutnya untuk membuat sistem ubah data kategori yang akan kita lakukan adalah
  1. Buat file dengan nama edit.html.erb di dalam folder app/views/categories. Tambahkan script berikut.
  2. Pada categories_controller.rb method edit, tambahkan script berikut.
  3. Coba jalankan server dengan menjalankan perintah
    $ rails s
    dan buka url http://localhost:3000/categories dan klik link edit pada salah satu data. Maka pada halaman tersebut tampilan yang akan muncul adalah sebagai berikut

    Kita baru sampai pada step menampilkan tampilan ubah data. Selanjutnya kita tambahkan script untuk melakukan proses pengubahan data.

    Pada categories_controller.rb method update, tambahkan script berikut.
    Sekarang coba lakukan pengubahan data pada halaman ubah data. Jika melakukan step dengan benar, pasti data akan berhasil diubah.
Selanjutnya, kita akan membuat proses untuk melakukan penghapusan data. Yang harus dilakukan adalah sebagai berikut.

Delete pada Active Record
Selanjutnya untuk membuat sistem ubah data kategori yang akan kita lakukan adalah
  1. Pada categories_controller.rb method destroy, tambahkan script berikut.
  2. Coba jalankan server dengan menjalankan perintah
    $ rails s
    dan buka url http://localhost:3000/categories dan klik link destroy pada salah satu data. Maka pada halaman tersebut tampilan yang akan muncul pop-up berupa konfirmasi penghapusan data sebagai berikut


    Jika kita menekan button OK, maka data akan terhapus dan kembali ke halaman sebelumnya.
Fathara Annisa Azka | C-aio Indonesia

Rabu, 14 Maret 2018

Seri Belajar Ruby on Rails Bagian 5 - Membuat Aplikasi Rails Pertamamu

Setelah sebelumnya memulai pembahasan mengenai apa itu Ruby, cara menginstall Ruby on Rails, pengenalan bahasa Ruby, dan pengenalan Rails framework, sekarang saatnya untuk memulai menggunakan Rails framework dengan membuat aplikasi sederhana.

Aplikasi Manajemen Tugas Sederhana

Kali ini kita akan mencoba membuat aplikasi manajemen tugas sederhana. Aplikasi ini berfungsi untuk mencatat tugas-tugas harian, baik tugas sekolah ataupun tugas kuliah. 

Sebelum itu, mari kita pikirkan data apa yang dibutuhkan untuk membuat aplikasi ini. Karena aplikasi ini berkaitan dengan mencatat tugas harian, maka data yang dibutuhkan, yaitu:
  1. Nama Tugas
  2. Deskripsi tugas
  3. Kategori tugas
    Kategori ini dimaksudkan untuk menyimpan nama mata kuliah atau nama mata pelajaran di sekolah.
  4. Deadline (Tanggal dikumpulkan)
Setelah mengetahui data apa saja yang dibutuhkan, dapat disimpulkan bahwa setidaknya aplikasi ini terdiri dari satu model, satu controller, dan beberapa view. Lalu kita buat projectnya, dengan menjalankan perintah berikut pada terminal atau command prompt.

$ rails new homework_management

Setelah membuat Rails project baru, yang harus dilakukan adalah membuat controller, model, dan view-view yang dibutuhkan. Untuk membuat beberapa hal tersebut, Rails menyediakan fitur yang sangat berguna untuk membuatnya secara otomatis dan simpel.

Scaffold, Fitur Ajaib di Rails

Scaffold ?. Apa itu scaffold ?. Scaffold merupakan quick-way yang disediakan oleh Rails untuk membuat controller, model, beserta view-view yang berkaitan. Dengan scaffold controller, model, dan view-view tersebut dapat dibuat dengan satu kali operasi.
$ rails generate scaffold Homework homework_name:text category:string deadline:date description:text
Perintah di atas, berarti membuat resource homework dan pada tabelnya memiliki kolom:
  1. homework_name berupa text
  2. category berupa string (menyimpan mata kuliah atau mata pelajaran)
  3. deadline berupa date, dan
  4. description berupa text

Apa yang dihasilkan dari perintah tersebut ?


Kesimpulannya yang dihasilkan dari scaffold adalah:
  1. File migration
  2. Model
  3. Route
    Scaffold akan otomatis mendaftarkan URL yang sudah dibuat menjadi route resources
  4. Controller
  5. Dan pada view, yaitu folder homeworks di app/views, index.html.erb, edit.html.erb, show.html.erb, new.html.erb, dan _form.html.erb di folder app/views/homeworks
Setelah itu coba jalankan server, dengan cara mengetikkan perintah berikut pada terminal atau command prompt.
$ rails s 
Coba masukkan URL http://localhost:3000/ dan yang akan muncul adalah tampilan seperti berikut.


Tampilan tersebut merupakan tampilan error pada Rails framework. Apa yang terjadi ?. Yang terjadi adalah kita lupa untuk menjalankan file migrasi yang dibuat oleh scaffold.

Perlu diingat meskipun kita menggunakan scaffold, tetapi untuk melakukan migrasi file database, harus dilakukan sendiri dengan cara menjalankan perintah berikut.
$ rake db:migrate


Jalankan server kembali dan refresh halaman http://localhost:3000/


Aplikasi sudah berjalan, namun bagaimana untuk melihat hasil dari scaffold yang dibuat ?. Karena kita tadi membuat scaffold Homework, maka coba buka url http://localhost:3000/homeworks/, maka yang akan muncul pada browser adalah sebagai berikut.
 

Jika tampilan di atas muncul, itu artinya aplikasi manajemen tugas sederhana sudah dibuat.
Hanya dengan menggunakan scaffold bagian-bagian terpenting yang saling berhubungan dapat dibuat. Tetapi bagaimana penjelasannya ?. Bagaimana jika membuatnya secara manual ?. Berikut penjelasannya.

Model

Saat men-generate scaffold Homework, otomatis akan membuat model pada app/models/homework.rb. Pada model ini nantinya dapat digunakan untuk melakukan validasi data yang akan masuk, dsb. Untuk membuat model secara manual dapat dilakukan dengan cara
$ rails generate model Homework
Perintah tersebut otomatis membuat model dengan nama homework.rb di app/models beserta file migrasi tablenya.

Controller

Saat men-generate scaffold Homework, otomatis akan membuat controller pada app/controllers/homeworks_controller.rb. Selain itu, saat menjalankan scaffold maka pada cotroller otomatis akan membuat method-method berikut:
  1. index: menampilkan seluruh data pada tabel
  2. show: menampilkan data sesuai dengan parameter
  3. new: menampilkan halaman tambah data
  4. edit:  menampilkan halaman edit data
  5. create: proses menyimpan data
  6. update: proses mengubah data
  7. destroy: proses menghapus data
Untuk membuat controller secara manual dapat dilakukan dengan cara
$ rails generate controller Homework
Perintah tersebut otomatis membuat controller dengan nama homework_controller.rb di app/controller. Jika ingin membuat controller dan membuat view, dapat dilakukan dengan cara
$ rails generate controller Homework index
kata "index" pada perintah tersebut berarti membuat view pada app/views/homework/index.html.erb

Migration

Dari awal pembahasan kita sudah sering menyebutkan file migrasi tabel. Apa itu migrasi atau migration table di Ruby ?. Migration adalah fitur di Ruby yang dibuat untuk membuat atau mengubah tabel di database secara mudah. Migration ini merupakan salah satu yang akan dihasilkan ketika melakukan scaffolding.

Untuk dapat membuat file migrasi, lakukan perintah berikut.
$ rails generate migration CreateHomeworks
File migrasi yang sudah dibuat akan disimpan pada folder db/migrate

Untuk dapat melakukan migrasi, lakukan perintah berikut.
$ rake db:migrate

Route

Route pada Rails diibaratkan seperti jembatan yang berfungsi untuk menerima request dari browser dan meneruskannya ke controller atau men-generate URL beserta action jika URL tersebut diakses.

Route di Rails application terdapat pada config/routes.rb. Ketika menggunakan scaffold, maka scaffold akan otomatis mendaftarkan resource yang dibuat di routes.rb. 


resource :homeworks artinya mengikat semua method yang ada pada controller homework menjadi satu bagian, dan URL yang terbentuk dari resource ini akan sesuai dengan nama methodnya. 

Contoh pada resources :homeworks terdapat method new, maka URL yang dihasilkan menjadi /homeworks/new

Lalu dari hasil melakukan scaffolding URL apa yang dihasilkan ?. Untuk mengetahui route apa saja yang terdaftar, dapat dilakukan dengan cara
$ rake routes



HTTP Verb Path Controller#Action Fungsi
GET /homeworks homework#index menampilkan seluruh tugas
GET /homeworks/new homework#new menampilkan halaman untuk menambahkan data tugas harian
POST /homeworks homework#create berisi proses penambahan data
GET /homeworks/:id homework#show menampilkan data tugas yang lebih spesifik
GET /homeworks/:id/edit homework#edit menampilkan halaman yang berisi form untuk merubah data tugas
PATCH/PUT /homeworks/:id homework#update berisi proses merubah data tugas
DELETE /homeworks/:id homework#destroy berisi proses untuk menghapus data

Merubah Root Action

Untuk merubah root action ke sebuah method tertentu, misalnya root action akan diubah ke method index pada controller homework_controller.rb, dapat dilakukan dengan cara menambahkan script berikut pada routes.rb
root "homeworks#index"

Happy Coding !!
Penting untuk diingat Rails memang menyediakan fitur scaffold untuk memudahkan para pengembang, namun jangan sampai penggunaan scaffold tanpa diimbangi pemahaman untuk membuat controller, model, migrasi, route, dan view secara manual.

Fathara Annisa Azka | C-aio Indonesia

Selasa, 13 Maret 2018

Seri Belajar Ruby on Rails Bagian 4 - Pengenalan Rails Framework

Pengenalan Rails Framework

Rails adalah aplikasi framework berbasis web yang dibuat menggunakan bahasa pemrograman Ruby. Rails dibut untuk membuat proses pembuatan aplikasi web menjadi lebih mudah dan dibuat berdasarkan apa yang setipa pengembang butuhkan. Rails membuat para pengembang untuk menulis dengan kode program yang singkat daripada bahasa atau framework lain. Menurut para pengembang yang sudah mencoba Rails mengatakan bahwa Rails membuat deveopment aplikasi web menjadi lebih menyenangkan.



Rails memiliki dua filosofi yang menjadi pedoman dalam pembuatannya
  1. Dirancang untuk memudahkan programmer melakukan konfigurasi karena Ruby on Rails menggunakan prinsip "Convention Over Configuration". Dengan prinsip ini programmer tidak usah terlalu repot untuk melakukan seting aplikasi seperti koneksi ke database, karena sudah ada mekanisme yang disediakan dan cukup mudah karena tinggal mengisi nama tipe server database yang digunakan ( mysql / oracle / sql server / postgresql / etc ), mengatur nama database, username, password dan hos.

  2. Menggunakan prinsip "DRY ( Do not Repet Yourself )", yang intinya adalah efisiensi dalam manajemen codes. 
  3.  

Arsitektur Rails Framework


Rails memiliki konsep MVC(Model View Controller). Apa itu model ? Apa itu View ? dan apa itu Controller ?. Mari kita jawab satu-persatu.
  1. Model
    Model adalah inti dari aplikasi ruby on rails yang fungsinya untuk me-maintain sebuah aplikasi. Semua logic dan business rules di dalam aplikasi sebaiknya ditulis dalam model. Misalnya untuk memvalidasi sebuah username agar tidak lebih dari 30 karakter. Nantinya data yang akan masuk ke dalam database otomatis tervalidasi dan tidak mungkin terlewat.
  2. View
    View merupakan bagian yang fungsinya untuk membuat user interface. Misalnya HTML, XML, Ajax, dll. View berfungsi sebagai front-end dari suatu aplikasi.
  3. Controller
    Controller merupakan bagian yang fungsinya menerima "event" dari luar (user input) dan bertugas untuk menghubungkan model dengan view. Misalnya, untuk mengambil data sebuah user "A". Ambil datanya dari model, siapkan di controller, lalu view bertugas menampilkannya di halaman web.
MVC Flow pada Rails, terjadi seperti ini


Pada gambar terdapat bagan Rails Router. Rails router ini berfungsi untuk mengenali dan menerima permintaan dari URL. Lalu melemparkannya ke controller, atau langsung ke aplikasi itu sendiri. Untuk mengatur rails router ini terdapat pada folder config/routes.rb

Rails memiliki komponen-komponen penting yang saling berkesinambungan. Komponen-komponen tersebut terdiri dari
  • Action Mailer
    Action Mailer ini memungkin untuk melakukan pengiriman email dari aplikasi web yang dibuat.
  • Action Pack
    Action Pack merupakan kombinasi dari action-action di bawah ini.
    • Action Controller
      Action Controller ini merupakan C dari konsep MVC pada Rails. Controller ini pada umumnya berfungsi menjadi penengah antara model dan view. Ia juga bertugas untuk menerima request dari URL, lalu mem-fetching data atau menyimpan data, dan kemudian menggunakan view untuk menampilkan output berupa HTML.
    • Action Dispatcher
      Action Dispatcher ini berfungsi sebagai pengatur jalur antara request ke controller
    • Action View
      Action ini digunakan oleh Action Controller untuk mengkonversi respon yang dihasilkan controller
  • Active Model
    Active model berfungsi untuk mengizinkan Action Pack helper untuk berinteraksi dengan plain Ruby object. Action ini juga membantu dalam pembuatan custom ORM (Object Relational Mapping). Action ini berupa library-library yang berisi class-class yang digunakan oleh Active Record.
  • Active Record
    Active Record merupakan M dari konsep MVC pada Rails. Ia bertugas sebagai model dimana ia merupakan bagian dari sistem yang bertanggung jawab atas data bisnis dan logika. Data bisnis ini misalnya data orang, tempat, dsb.
  • Active Resource
    Active Resource adalah library yang bertujuan untuk menyediakan antarmuka antara Active Record untuk mengontrol resource atau object.
  • Active Support
    Active Support adalah salah satu komponen pada Rails yang bertanggungjawab untuk menyediakan Ruby extensions, utilities, dsb.
  • Railties


Membuat Rails Project Baru

Rails meyediakan generator pemanggil script yang ditujukan untuk embuat proses pengembangan menjadi lebih mudah. Untuk menggunakan generator untuk membuat Rails project baru, lakukan perintah berikut
$ rails new blog

Pindah ke folder blog, dengan cara
$ cd blog

Struktur dari Rails project
 
Folder yang sering kita buka dan kita ubah isinya saat membuat aplikasi di Rails Framework, sebagai berikut.
  1. app/
    Tempat menyimpan controller, model, view, helper, mailers, channels, jobs dan assets.
  2. config/
    Tempat menyimpan route, database, dll.
  3. db/
    Tempat menyimpan schema database dan migration
  4. Gemfile & Gemfile.lock
    File ini mengizinkan pengguna untuk mensfesifikasin apa yang dibutuhkan gem apa yang dibutuhkan untuk aplikasi.
Untuk melihat detail fungsi dari masing-masing folder lebih jelasnya terdapat disini.

Menjalankan Rails Project

Setelah membuat project baru, coba jalankan project tersebut dengan cara jalankan perintah berikut.

$ rails s

lalu coba jalankan dengan cara mengetikkan url http://localhost:3000 pada web browse. Jika project berhasil dijalankan, maka akan muncul halaman seperti berikut.


Untuk menghentikan web server, lakukan CTRL + C pada terminal atau command prompt.

Membuat Controller dan View

Untuk membuat sebuah project Rails, minimalnya harus memiliki sebuah controller dan sebuah view. Untuk membuat controller dan view kita bisa memanfaatkan generator yang telah disediakan oleh Rails.

Pada command prompt atau terminal, jalankan perintah berikut ini.
$ rails generate controller Welcome index

Ini artinya yang dilakukan adalah generator Rails membuat sebuah controller dengan nama welcome_controller.rb dan di dalamnya terdapat method index. Sedangkan pada view generator otomatis membuat folder baru pada bagian views dengan nama home dan didalamnya terdapat file index.html.erb.

Isi welcome_controller.rb
Isi file index.html.erb di folder app/views/welcome

Jika ingin membuat controller dan view secara manual dapat dilakukan dengan cara:
  1. Buat sebuah controller, ia harus berekstensi .rb
  2. Di dalam controller tersebut setidaknya harus membuat satu buah method
  3. Untuk membuat view,  buat folder terlebih dahulu, dan namanya disesuaikan dengan nama controller.  
  4. Baru di dalam folder tersebut buat halaman viewnya dengan nama disesuaikan dengan method pada controller dan ekstensinya harus .html.erb


Say "Hello !" to Rails

Setelah membuat controller dan view, maka yang dilakukan adalah ubah isi pada file index.html.erb seperti berikut.

  
Daftarkan method di route yang terletak di config/routes.rb, seperti berikut.


get 'welcome/index'
Script ini berarti kita mendefinisikan url /welcome/index yang jika diakses route akan melempar ke method index pada welcome_controller.rb.   

Penting:
Jika kita membuat controller dan view melalui generator maka method akan otomotis didaftarkan pada route.

Jalankan kembali Rails project dengan menjalankan perintah rails s. Pada browser
masukkan url http://localhost:3000/welcome/index pada web browser.

 

Fathara Annisa Azka | C-aio Indonesia