Blog


Ignore Foreign Key untuk Mempermudah Manipulasi Tabel Berelasi

Ceritanya mau truncate table accounts yang ada foreign key assosiasi pada tabel users tapi selalu error Cannot truncate a table referenced in a foreign key constraint … . Ternyata ada solusinya begini : SET FOREIGN_KEY_CHECKS = 0; TRUNCATE codename-ramadhan_development.accounts; SET FOREIGN_KEY_CHECKS = 1; Kuncinya ada pada SET FOREIGN_KEY_CHECKS. Ketika di set valuenya 0 (false) maka foreign key akan diignore dan kitapun bebas […]




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 […]




Git Branch Highlight pada Linux Terminal

Tambahkan pada ~/.bashrc dan ~/.bash_profile # branch highlight # Configure colors, if available. if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then c_reset=’\[\e[0m\]’ c_user=’\[\e[0;32m\]’ c_path=’\[\e[1;34m\]’ c_git_clean=’\[\e[0;37m\]’ c_git_staged=’\[\e[0;32m\]’ c_git_unstaged=’\[\e[0;31m\]’ else c_reset= c_user= c_path= c_git_clean= c_git_staged= c_git_unstaged= fi # Add the titlebar information when it is supported. case $TERM in xterm*|rxvt*) TITLEBAR=’\[\e]0;\u@\h: \w\a\]’; ;; *) TITLEBAR=””; ;; […]




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 […]




Mengembalikan Local Branch Mirip dengan Remote Branch

Terkadang setelah kita bereksperimen pada suatu branch dan merasa code kita semakin jauh dari apa yang kita harapkan, maka kita berusaha mengembalikan / revert lokal branch kita seperti semula (sesuai dengan HEAD pada remote repo). Cara paling gampang untuk membuat local branch kita menjadi mirip dengan remote branch, yaitu dengan command git reset git reset –hard origin/nama-branch Command tersebut juga sangat berguna ketika terdapat […]




Commiting to Remote Repo Like a Boss With Git Squash

Seringkali kita terlalu banyak membuat commit-an git message yang kurang relevan dengan fitur yang sedang kita kerjakan. Misalnya: commit e43793a7e564ca87f6581efeff9f931c53698bc7 Author: absyah <ardian.bahtiarsyah@gmail.com> Date: Fri Jun 16 22:44:36 2017 +0700 finalized fixing bugs commit c98e4275ba5ffbd47bfcf7bebfb7c1f12c33fa30 Author: absyah <ardian.bahtiarsyah@gmail.com> Date: Wed Jun 14 22:59:15 2017 +0700 fixed bug again! commit e4b81db9e235725994db677f6c3de807d8675b1f Author: absyah <ardian.bahtiarsyah@gmail.com> Date: Wed […]