Bonjour à tous,

Je suis face à un probleme que je n'arrive pas à résoudre depuis ce matin :
Lors d'envoi de formulaire (en plusieurs langue donc) $this->data est bien sous cette forme :

array(
    'Model' => array(
        'name' => array(
            'fra' => 'titre',
            'esp' => 'titulo',
            'eng' => 'title'
        ),
        'content' => array(
            'fra' => 'contenu',
            'esp' => 'contenidos',
            'eng' => 'content'
        )
    )
)

Le probleme c'est que la requete sql ne fonctionne pas..
La valeur entrée pour les champ sont juste les array.

pourtant dans boostrap j'ai bien :

Configure::write('Config.language', 'fra');
Configure::write('Config.languages', array('fra', 'esp','eng'));

Et dans le controller j'ai bien :

$locale = Configure::read('Config.languages');
            if(isset($this->data)){
                //debug($this->data);
                $this->Admin->save($this->data);
            }

Et enfin, dans la vue j'ai bien :

<?php foreach (Configure::read('Config.languages') as $lang) { ?>
        <?= $this->Form->input('Admin.name.'.$lang, array('placeholder' => 'Titre', 'class' => 'form')); ?>
        <?= $this->Form->textarea('Admin.content.'.$lang, array('placeholder' => 'Contenu Principal', 'class' => 'form', 'id' => 'textarea')); ?>
    <?php } ?>

Si vous savez où j'ai manqué une étape, je vous remercie de bien vouloir me dire comment remédier à cela !

2 réponses


Grafikart
Réponse acceptée

Essaie de remplacer ton save( par un saveMany(

Canonier
Auteur

S'il suffisait qu'on save..Many..