CakePHP1.2のtranslateビヘイビアについて調べています。CookBookにはまだドキュメントが上がっていないようなのですが、実際のテーブル設計のサンプルが記載されたドキュメントを知っている方、いたら教えて下さいませ。


CookBookの残念なページ:
http://book.cakephp.org/ja/compare/92/翻訳

ちなみに、実装コードよりも主にテーブル設計を知りたいです。
また、l10n(poファイルの方)は大体分かったので、回答不要です。
詳しい方、宜しくお願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2008/11/07 16:42:42
  • 終了:2008/11/08 20:00:06

ベストアンサー

id:krese No.1

krese回答回数20ベストアンサー獲得回数42008/11/07 17:24:26

ポイント60pt

正式なドキュメントではないですが、Googleグループに投稿されています。

http://groups.google.co.jp/group/cake-php/web/faq

の「Translate behavior」の部分で

http://groups.google.co.jp/group/cake-php/msg/5a859571032c6bde

http://groups.google.co.jp/group/cake-php/msg/fc50f556b6c07755

あたりにテーブル設計のサンプルが記述されています。


周辺にコードのサンプルも載っているので、あわせてご覧ください。

id:dak

有難うございます。実はここは見つけてたんですが、news_article、i18n,i18n_contentの関連性が今いち分からず・・後の投稿で他の方が仕様変わるかもよ、的にたしなめているのもやや心配なので、もうちょい信頼できそうなソースだと嬉しいです。

ちなみにこの事例をベースに噛み砕いてテーブル構成を説明してくれる方は、新しいリソース無くても回答頂けると嬉しいです。宜しくお願いします。


(追記)

もうちょい読み込んでみました。

---------------------------------------------------------------

INSERT INTO `articles` (`id`, `created_at`, `active`) VALUES

(1, '2007-07-04 15:33:56', 'yes');

INSERT INTO `i18n` (`id`, `locale`, `i18n_content_id`, `model`,

`row_id`, `field`) VALUES

(91, 'eng', 107, 'Article', 1, 'title'),

(92, 'eng', 108, 'Article', 1, 'content'),

(93, 'fra', 109, 'Article', 1, 'title'),

(94, 'fra', 110, 'Article', 1, 'content'),

(95, 'dut', 111, 'Article', 1, 'title'),

(96, 'dut', 112, 'Article', 1, 'content');


INSERT INTO `i18n_content` (`id`, `content`) VALUES

(107, 'English title'),

(108, 'English content'),

(109, 'French titel'),

(110, 'French content'),

(111, 'Dutch title'),

(112, 'Dutch content');

---------------------------------------------------------------

良く見ると結構分かりました。


article(マスター)

- i18n : 翻訳されたコンテンツとマスターを結び付けるインデックス

- i18n_content : 翻訳されたコンテンツそのもの

という感じでしょうか。


疑問なのは、

1.articlesにtitleやcontentのカラムは持たないの?

 (マスターは特に無くて、国際化するデータは全部i18n_contentに記述しておけば、

  articleがarticlesに該当カラムが存在するモノとして扱ってくれる?)

2.翻訳不要なデータ(数値等)は、articlesにそのまま持っておくのか?

3.サイト全体の翻訳されるデータが全てi18nとi18n_contentにごった煮で入るのか?

 (もっと構造化できないの?)


この辺り、分かる方いたら教えて下さいませー。

[追記]

見つけました。やったー。

http://pm.11op.net/2007/12/cake-12-prebeta.php

2008/11/08 19:59:46

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません