Ruby on Rails
Lingo.dev CLI를 사용한 Ruby on Rails의 AI 번역
Ruby on Rails란 무엇인가요?
Ruby on Rails는 Ruby로 작성된 서버 측 웹 애플리케이션 프레임워크입니다. 모델-뷰-컨트롤러(MVC) 패턴을 따라 데이터베이스, 웹 서비스 및 웹 페이지에 대한 기본 구조를 제공합니다.
Lingo.dev CLI란 무엇인가요?
Lingo.dev는 AI 기반 번역 플랫폼입니다. Lingo.dev CLI는 소스 파일을 읽고, 번역 가능한 콘텐츠를 대규모 언어 모델로 전송하며, 번역된 파일을 프로젝트에 다시 작성합니다.
이 가이드에 대하여
이 가이드는 Ruby on Rails 애플리케이션에서 Lingo.dev CLI를 설정하는 방법을 설명합니다. Rails로 프로젝트를 스캐폴딩하고, 번역 파이프라인을 구성하며, 결과를 확인하는 방법을 배우게 됩니다.
1단계. Rails 프로젝트 설정하기
-
Rails 애플리케이션 생성하기:
rails new rails-demo
-
프로젝트 디렉토리로 이동하기:
cd rails-demo
-
컨트롤러와 뷰 생성하기:
bin/rails generate controller Home index
2단계. 소스 콘텐츠 생성하기
-
config/locales/en.yml
에 있는 영어 로케일 파일을 엽니다. -
번역 가능한 콘텐츠 추가하기:
en: home: title: "Welcome" greeting: "Hello from Rails + Lingo.dev"
3단계. CLI 구성하기
프로젝트 루트에 i18n.json
파일을 생성합니다:
{
"$schema": "https://lingo.dev/schema/i18n.json",
"version": 1.8,
"locale": {
"source": "en",
"targets": ["es"]
},
"buckets": {
"yaml-root-key": {
"include": ["config/locales/[locale].yml"]
}
}
}
이 파일은 다음을 정의합니다:
- Lingo.dev CLI가 번역해야 할 파일
- 번역할 언어 간의 관계
이 경우, 구성은 YAML 파일을 영어에서 스페인어로 번역합니다.
[locale]
은 런타임에 대체되는 플레이스홀더입니다. 이는 콘텐츠가 한 위치(예: config/locales/en.yml
)에서 읽히고 다른 위치(예: config/locales/es.yml
)에 쓰여지도록 보장합니다.
자세한 내용은 i18n.json 구성을 참조하세요.
4단계. 콘텐츠 번역하기
-
CLI를 통해 Lingo.dev에 로그인하세요:
npx lingo.dev@latest login
-
번역 파이프라인을 실행하세요:
npx lingo.dev@latest run
CLI는 번역된 콘텐츠를 저장하기 위한
config/locales/es.yml
파일과 번역된 내용을 추적하기 위한i18n.lock
파일(불필요한 재번역을 방지하기 위함)을 생성합니다.
5단계. 번역 사용하기
-
config/routes.rb
에서 로케일 기반 라우트를 구성하세요:Rails.application.routes.draw do scope "(:locale)", locale: /en|es/ do root "home#index" end end
-
app/controllers/application_controller.rb
에서 로케일 처리를 설정하세요:class ApplicationController < ActionController::Base before_action :set_locale private def set_locale I18n.locale = params[:locale].presence_in(I18n.available_locales.map(&:to_s)) || I18n.default_locale end def default_url_options { locale: I18n.locale } end end
-
뷰 내에서 지역화된 문자열을 로드하기 위해
t
헬퍼 메서드를 사용하세요:<h1><%= t("home.title") %></h1> <p><%= t("home.greeting") %></p>
-
Rails 서버를 시작하세요:
bin/rails server
-
다음 URL로 이동하세요:
- 영어 콘텐츠는 http://localhost:3000/en
- 스페인어 콘텐츠는 http://localhost:3000/es