2012-06-18 2 views
0

번역을 처리하는 모듈이 있습니다.CakePHP 커스텀 기능 (전역은 아님)

$arr["key1"]="text"; 
... 

나는 아약스 해당 파일을 편집하기 위해 호출을해야합니다

이 그것은 모든 데이터베이스에 바인드되지 않은 파일은 순전히를 간단히이 같은 것입니다. 이 파일은 필자가 필요로하는 모든 텍스트 컨텐츠를 제공하기 위해 페이지에 액세스 할 때마다 들여 오기 될 것입니다 (세계에서 가장 좋은 것은 아니지만 일을하고 있습니다. XML이 없으므로 정말 빠릅니다. 파싱 ​​(parsing) "과 같은 것으로, 단순히 표준 .php 파일에 저장됩니다).

class TranslationsController extends AppController { 
    public $uses = array(); // Model-less 
    public $components = array('RequestHandler'); 
    public $helpers = array('Session'); 
    protected $translationFilePath; 

    public function setItem() { 
    } 

    public function backupFile() { 
    } 
} 

내 문제는 간단하다 :

는 추가/편집 작업과 같은 작업을해야합니다이 아약스 통화를 처리하기 위해, 나는 모델-적은 TranslationController을 만들었습니다 할 나는 사용자 정의 기능을 넣어 그 파일을 열거 나 쓰거나 찾는데 사용됩니까?

예를 들어, 나는 읽고있는 줄에서 키를 추출하는 기능이 있습니다.

데이터를 모델 내부에 배치하는 것이 좋지만 제 경우에는 모델이없고이 함수가 데이터에 연결되어 있지 않은 게시물을 보았습니다. 모델에 있어서는 안된다. 맞지? 저는 그것이 세계화되기를 원하지 않습니다.

도움 주셔서 감사합니다.

+0

왜 CakePHP를 함께 제공하고, 더 많거나 적은 표준 gettext의 도구를 기반으로 번역에 내장 된 물건을 사용하지 않는를 참조하십시오? http://www.gnu.org/software/gettext/ 및 http://book.cakephp.org/2.0/ko/core-libraries/internationalization-and-localization.html – burzum

답변

0

사용자 지정 데이터 소스의 사용 사례와 비슷한 소리가납니다 (http://book.cakephp.org/2.0/en/models/datasources.html).

개인적으로 저는 응용 프로그램의 app/Lib 폴더에 일반 PHP 클래스를 만듭니다.

+0

감사합니다. 작동합니다, 내가 사용하는 사용자 지정 라이브러리를 사용했습니다 App :: import ('Lib', 'TranslationsLibrary'); –

1

왜 CakePHP와 함께 제공되는 번역 도구를 사용하지 않고 어느 정도 표준 gettext 도구를 기반으로합니까?

당신이하고있는 일은 휠을 다시 발명하고 CakePHP가 제공하는 기능이 분명히없는 테스트되지 않은 커스터마이즈 된 번역 구현을 고안하는 것입니다. 예를 들어 어떻게 복수형을 처리합니까?

CakePHP는 번역을 위해 __(), __d(), __n(), __dn()을 제공하며 번역 파일은 APP/Locale /에 일반 텍스트 파일로 저장되며 poedit로 편집됩니다.

http://www.gnu.org/software/gettext/http://book.cakephp.org/2.0/en/core-libraries/internationalization-and-localization.html

+0

두 가지 주된 이유 : 1. 내 시스템은 번역 파일 (HTML을 포함 할 수 있음)을 "실시간"으로 자동 편집 할 수 있어야하며 모든 변경 사항은 ajax 호출을 통해 데이터베이스로 전송됩니다. 2. PHP 파일에서 직접 생성되므로 다른 구문 분석보다 읽기가 더 빠릅니다. 내가 틀릴 수도 있지만이 두 가지 경우에 대해서는 CakePHP가 그렇게 할 수 있다고 생각하지 않습니다. –

관련 문제