다국어 지원 (i18n)
📋 작성 예정
이 문서는 다국어 시스템 고도화 후 상세 내용이 추가됩니다.
Multi-SaaS Kit의 다국어 지원 시스템입니다.
개요
Multi-SaaS Kit은 Laravel의 기본 다국어 시스템을 사용하며, 테넌트별로 다른 언어 설정을 지원합니다.
| 항목 | 값 |
|---|---|
| 기본 언어 | 한국어 (ko) |
| 지원 언어 | 한국어, 영어 |
| 상태 | 기본 구현 완료, 고도화 예정 |
현재 지원 언어
| 언어 | 코드 | 상태 |
|---|---|---|
| 한국어 | ko | ✅ 기본 |
| 영어 | en | ✅ 지원 |
기본 설정
config/app.php
'locale' => env('APP_LOCALE', 'ko'),
'fallback_locale' => env('APP_FALLBACK_LOCALE', 'en'),
'faker_locale' => env('APP_FAKER_LOCALE', 'ko_KR'),
.env
APP_LOCALE=ko
APP_FALLBACK_LOCALE=en
번역 파일 구조
lang/
├── ko/
│ ├── auth.php # 인증 메시지
│ ├── pagination.php # 페이지네이션
│ ├── validation.php # 유효성 검사
│ └── landing.php # 랜딩 페이지
└── en/
├── auth.php
├── pagination.php
├── validation.php
└── landing.php
기본 사용법
Blade 템플릿
// 기본 번역
{{ __('messages.welcome') }}
// 변수 치환
@lang('messages.greeting', ['name' => $user->name])
// 복수형
{{ trans_choice('messages.items', $count) }}
PHP 코드
// 기본 번역
$message = __('auth.failed');
// 복수형
$message = trans_choice('messages.items', $count);
// 언어 변경
App::setLocale('en');
예정 기능
테넌트별 언어 설정
- 테넌트마다 기본 언어 설정 가능
- 사용자 선호 언어 저장
- 자동 언어 감지
Filament 패널 다국어
- 관리 패널 완전 한글화
- 언어 전환 UI
- 커스텀 번역 관리
동적 번역
- 데이터베이스 기반 번역 관리
- 테넌트별 커스텀 번역
- 번역 관리 UI