Rails (6)


Optimistic Locking pada Rails

Jika terdapat dua user yang berusaha melakukan update record melalui ActiveRecord, misalnya: user1 = User.find(1) user2 = User.find(1) user1.name = “Ardian” user1.save # User id 1, name = Ardian user2.name = “Ardian Bahtiarsyah” user2.save # User id 1, name = Ardian Bahtiarsyah maka bisa dilihat nilai dari User.find(1).name adalah Ardian Bahtiarsyah. Lalu bagaimana caranya agar ketika suatu […]




Create Subdomain Programmatically

Kebetulan saat ini Codename Ramadhan (will be launched soon) menggunakan fitur subdomain dan barangkali teman-teman merasa ingin tahu. Bagaimana sih caranya implementasi subdomain secara programmatically pada aplikasi Rails? Begini caranya: 1. Generate Account Model Pertama kita generate model Account terlebih dahulu sebagai tabel untuk menyimpan nama-nama subdomain yang akan kita gunakan. rails g model Account subdomain:string Dari generator tersebut […]




Kunci Ruby Version & Ruby Gemset dengan .ruby-version & .ruby-gemset

Jika kita memiliki banyak versi ruby yang terinstall membuat setiap kita pindah project seringkali ruby version dan gemset tidak sesuai dengan requirement. Misalnya sekarang kita di project A yang membutuhkan ruby version 2.3.4 dan gemset project-a, kemudian kita pindah ke project B yang membutuhkan ruby version yang lebih tinggi dengan gemset yang berbeda. Ketika menjalankan server […]




Memaksimalkan Validasi Model dengan ActiveModel::EachValidator

Kebetulan pada project https://codename-ramadhan.herokuapp.com (!real name will be revealed soon) menggunakan subdomain dalam implementasinya. Permasalahannya adalah kita harus mengamankan beberapa subdomain semisalnya www, ftp, mail, admin, ssl, doc, api dsb agar tidak dapat diklaim oleh user, betul? Kali ini kita akan membuat custom validation yang secara spesifik akan melakukan validasi pada attribute tertentu, dalam hal ini adalah […]




Custom Rake Task untuk Mempermudah Rails Development Workflow

Pada kesempatan sebelumnya kita telah mempelajari bagaimana menggunakan SSL pada development environment dengan server puma. Namun saya pribadi belum terbiasa dan susah mengingat command dalam running server dengan SSL tersebut. $ puma -b ‘ssl://127.0.0.1:3000?key=/home/ardian/.ssh/lvh.key&cert=/home/ardian/.ssh/lvh.crt’ Idenya adalah dengan memasukkan command tersebut kedalam rake task sehingga akan lebih simple dalam eksekusinya dan tentu saja akan mempermudah dalam […]




Setup SSL Rails Dev Environment dengan Self-Signed Certificate

Saat ini saya sedang mengerjakan side-project yang berkaitan dengan teknologi WebRTC dan kebetulan implementasinya harus menggunakan SSL (https) agar dapat berjalan dengan baik. Untuk itu saya perlu melakukan sedikit tambahan configurasi / menambahkan sertifikat SSL  agar local env dapat berjalan pada HTTPS. Sebagai tambahan, kita akan menggunakan domain lvh.me sehingga kita tidak perlu melakukan konfigurasi pada […]