Partial, Layout, Helper — 뷰를 깔끔하게 정리하는 기술
·
Ruby On Rails
Rails에서 뷰(View)는 사용자의 눈에 직접 닿는 영역이에요.처음엔 간단했던 뷰 코드도 기능이 추가되면서 점점 길어지고, 복잡해지죠.하지만 걱정 마세요. Rails는 뷰를 깔끔하게 분리하고 재사용할 수 있는 기술을 이미 다 준비해두었답니다.이번 글에서는 뷰 정리의 3대 핵심 기술, Partial / Layout / Helper를 집중적으로 살펴볼게요.🧩 1. Partial — 반복되는 뷰를 잘게 나누자Partial은 뷰를 재사용 가능한 조각으로 분리하는 기능이에요. 이름 앞에 _를 붙여서 관리해요.📁 예시: 댓글 뷰를 부분으로 분리하기# app/views/comments/_comment.html.erb # app/views/posts/show.html.erbRails는 배열을 넘기면 자동으..
Validation & Callback — 데이터의 품질을 지키는 방법
·
Ruby On Rails
Rails의 모델(Model)은 단순한 데이터 객체가 아닙니다.그 안에는 우리가 애써 쌓아올린 데이터의 신뢰성과 무결성을 지키기 위한 다양한 도구들이 숨어 있죠.이번 글에서는 그 중에서도 가장 핵심적인 기능인 Validation(유효성 검사)과 Callback(콜백)을 통해 어떻게 데이터 품질을 지킬 수 있는지 알아보겠습니다.✅ Validation — 유효한 데이터만 저장하게 만들기validates 메서드를 사용하면 모델에서 입력된 값이 조건에 맞는지를 자동으로 검사할 수 있어요.class Post 📌 주요 옵션들presence: true — 필수 입력length — 길이 제한 (최소/최대)uniqueness — 중복 방지format — 정규표현식으로 형식 제한inclusion / exclusion —..
마이그레이션과 스키마 변화 — 안전하게 DB 구조 바꾸기
·
Ruby On Rails
우리는 서비스를 운영하면서 언젠가는 데이터베이스 구조를 수정해야 할 순간을 맞이합니다.새로운 기능이 추가되면 컬럼이 필요하고, 기존 컬럼의 타입이 바뀌거나 테이블 자체가 변경될 수 있죠.이때 중요한 건 단 하나 — 안전하게, 그리고 되돌릴 수 있게 바꾸는 것. Rails에서는 이 과정을 Migration이라는 멋진 도구로 해결합니다.🧱 마이그레이션(Migration)이란?마이그레이션은 데이터베이스 스키마의 버전 관리 시스템입니다.일종의 "스키마 이력 관리 도구"라고 할 수 있어요.마이그레이션 파일은 다음과 같은 일을 합니다:테이블 생성/삭제컬럼 추가/변경/삭제인덱스 추가/삭제📦 마이그레이션 파일 생성하기$ bin/rails generate migration AddPublishedToPosts publ..
Rails에서의 MVC 구조 진짜 제대로 파보기
·
Ruby On Rails
Ruby on Rails는 “Convention over Configuration(관례 우선)”이라는 철학 아래 매우 강력한 구조를 제공합니다. 그 구조의 중심에는 바로 MVC, 즉 Model - View - Controller가 있죠. 처음에는 낯설게 느껴질 수 있지만, MVC를 제대로 이해하면 Rails가 왜 생산성이 좋은지, 왜 아름답다고 불리는지를 실감하게 될 거예요.🎭 MVC란 무엇인가요?MVC는 웹 애플리케이션을 세 가지 책임 영역으로 분리하는 아키텍처 패턴입니다.Model: 데이터와 비즈니스 로직View: 사용자에게 보여지는 화면Controller: 요청을 받아 처리하고 Model과 View를 연결이 세 가지가 서로 협력하면서 하나의 요청/응답 사이클을 완성하게 됩니다.📦 Rails의 M..
ActiveRecord로 데이터 다루기 — CRUD의 정석
·
Ruby On Rails
Rails에서 데이터베이스와 소통하는 방식은 ActiveRecord를 통해 이루어집니다. ActiveRecord는 ORM(Object-Relational Mapping) 역할을 하며, 데이터베이스의 테이블과 Ruby 객체를 연결시켜줍니다. 이 글에서는 Rails의 핵심 기능인 CRUD (Create, Read, Update, Delete)를 ActiveRecord를 통해 어떻게 다루는지 정리해보겠습니다.📘 모델 생성$ bin/rails generate model Post title:string content:text$ bin/rails db:migrate위 명령어로 posts 테이블이 생성되고, Post 모델이 생성됩니다. 이제 이 Post 모델로 DB 조작이 가능해집니다.🆕 Create (데이터 생..
Rails의 라우팅 시스템 — config/routes.rb 제대로 이해하기
·
Ruby On Rails
Ruby on Rails에서 라우팅은 웹 애플리케이션의 입구 역할을 합니다. 브라우저에서 /posts와 같은 URL을 입력했을 때 어떤 컨트롤러의 어떤 액션이 실행되어야 하는지를 결정하죠. 이 모든 것은 config/routes.rb 파일에서 이루어집니다. 이번 글에서는 Rails의 라우팅 시스템을 구조적으로 이해하고, 실전 예제와 함께 config/routes.rb 파일을 능숙하게 다루는 방법을 배워봅니다.🚦 기본 구조# config/routes.rbRails.application.routes.draw do resources :postsendresources :posts는 단 한 줄로 다음과 같은 7개의 RESTful 라우트를 자동 생성합니다:HTTP VerbURLController#ActionGE..