1. 환경 준비 및 Ruby 업그레이드
Rails 5는 최소 Ruby 2.2.2를 요구하지만, 안전 항해 연산자(&.)와 성능 향상이 포함된 Ruby 2.3 또는 2.4로의 업그레이드를 권장합니다. Gemfile에서 Rails 버전을 5.0으로 수정하고 bundle update를 수행한 뒤, rails app:update 명령을 통해 설정 파일을 최신화해야 합니다.
2. 주요 모델 및 컨트롤러 변경 사항
-
belongs_to 기본 필수화: Rails 5부터는
belongs_to관계가 기본적으로 존재해야 합니다. 선택적 관계인 경우optional: true를 명시해야 합니다. -
콜백 중단 방식 변경: 이전처럼
false를 반환해도 콜백 체인이 중단되지 않으므로, 명시적으로throw :abort를 사용해야 합니다. -
필터 메서드 갱신:
before_filter와 같은 구식 메서드는before_action으로 대체되었습니다. -
ActiveRecord 개선:
.or메서드가 도입되어 복잡한 쿼리 작성이 용이해졌으며,where.not의 동작이 개선되었습니다.
3. 마이그레이션 및 테스트 환경 업데이트
-
마이그레이션 버전 관리: 모든 마이그레이션 클래스명 뒤에
[4.2]또는[5.0]과 같은 버전을 명시해야 합니다. -
컨트롤러 테스트: 테스트 코드에서 요청 시
params:키워드를 사용하여 파라미터를 명시적으로 전달하도록 수정해야 합니다. -
데이터 형식: JSON 직렬화 시 타임스탬프 형식이 ISO 8601로 변경되었으므로 API 클라이언트와의 호환성을 확인해야 합니다.