0

その可能性は、単一のフォームで同じフィールドの複数の翻訳を保存しますか?名前フィールドを変換するためのBehaviorTranslateを使用したモデルがあります。3つの翻訳(deu、eng、ita)はi18nテーブルに適切に記録されていますが、フィールドは適切に検証されていません。助言がありますか?

app / Model / Category.php

class Category extends AppModel {
    public $actsAs = array('Translate' => array('name' => 'TranslateName'));
    public $validate = array(
        'name' => array(
            'notempty' => array(
                'rule' => array('notempty'),
                'message' => 'Error notempty',
            ),
        ),
    );
    ...

app / View / Categorys / admin_edit.ctp

<?php
echo $this->Form->create('Category');
echo $this->Form->input('Category.id');
echo $this->Form->input('Category.name.deu', array('label' => __d('Category', 'Name Deu')));
echo $this->Form->input('Category.name.eng', array('label' => __d('Category', 'Name Eng')));
echo $this->Form->input('Category.name.ita', array('label' => __d('Category', 'Name Ita')));
echo $this->Form->end(__d('app', 'Submit'));
?>

app / View / Controller / CategorysController.php

if ($this->Category->save($this->request->data)) {
    $this->Session->setFlash(__d('Category', 'The category has been saved'));
} else {
    $this->Session->setFlash(__d('Category', 'The category could not be saved. Please, try again.'));
}
4

1 に答える 1

2

私は同様の問題を抱えています

しかし、あなたはこれを試すことができます - それはあなたのためにそれを解決するはずです: https://github.com/zoghal/cakephp-MultiTranslateBehavior

于 2012-05-15T13:54:07.037 に答える