2012-09-06 1 views
1

처음으로이 문제가 발생하는 것을 상상할 수는 없지만 여전히 만족스러운 답변을 찾지 못했습니다.데이터베이스 조회 테이블 및 i18n

내 PHP/MySQL/CodeIgniter 응용 프로그램은 상태 데이터베이스 및 개별 선택과 같은 항목에 대해 조회 테이블을 묶은 MySQL 데이터베이스를 사용합니다. 이 웹 사이트는 두 가지 언어, 영어와 태국어로 사용할 수 있습니다

table XXXXXX 
id: int (PK) 
description: varchar(100) 

: 그 표는 일반적인 형태를 갖는다. 우리는 정적 컨텐츠를 위해 리소스 번들을 사용할 것이지만, 대부분의 경우 드롭 다운 상자에 표시되는 조회 값으로 무엇을해야합니까?

첫 번째 아이디어는 description_en과 description_th의 두 가지 설명 필드를 사용하고 세션에 저장된 로캘에 따라 올바른 설명 필드를 선택하는 것입니다.

동료는 리소스 번들에 모든 i18n 값을 갖는 경향이 있습니다. 그러면 테이블의 설명 필드가 중복 될 수 있습니다. 하나의 PK 필드 만있는 테이블은 의미가 없습니다. 이는 해당 FK 필드가 일반 조회 키로 "저하"된다는 것을 의미합니다. 또는 자원 번들과 함께 룩업 테이블을 사용하고 영어 설명을 관리자 참조로 둡니다.

조회 테이블은 최종 사용자가 아닌 관리자 만 변경할 수 있습니다.

나는 이것에 대한 정보에 입각 한 결정을 내리고 싶습니다. 그래서 어떤 제안이라도 환영합니다!

답변

1

많이하지 피드백하지만 때로는 그냥 ... 나는 우리가를 위해 또한 언어 파일을 계속 사용, 매우 간단 솔루션을 사용하고 있습니다

당신은 더 깊은 수준에 대해 생각하는 문제에 힘을 ... 게시 조회 값. 유일한 수정은 룩업 테이블이 실제 설명이 아니라 언어 파일의 룩업 키를 포함한다는 것입니다. 모든 개발 업체는 영어가 유창하기 때문에 설명 필드에 영어 약어를 사용하도록 설명하고 description_key로 이름을 바꿉니다.

그래서이 문제는 해결 된 것으로 봅니다.