Rails에서 DB Column 추가하기

rails는 database schema 등을 migration 파일로 관리합니다. 이를 이용하면 이미 만들어진 앱에서 DB Schema를 변경하거나 쉽게 Rollback할 수 있습니다.

rails g migration add_<column>_to_<table>:string

이후에 코드에 따라 Model이나 Controller 쪽에서도 추가 대응이 필요한데, 보통 가장 많이 실수하는 구간이 permit 부분입니다. Controller 코드 하단에 params 쪽에 보면 허용할 값들이 정해져있고, 해당 부분에도 신규 컬럼을 추가하면 끝납니다.

def log_params
  params.require(:log).permit(:key, :url, :ip, :time, :referer)
end