Je suis vraiment coincé avec ça. Je dois créer un formulaire dynamique multilangue, et de le faire comme ceci:problème symfony avec embedI18n
class TreeForm extends BaseTreeForm
{
public function configure()
{
parent::configure();
[...]
$languages = sfConfig::get('app_language_list');
$supportedlangs = $this->getObject()->getSupLangs();
if (empty($supportedlangs))
{
$supportedlangs = $languages;
}
$this->embedI18n($supportedlangs);
foreach ($supportedlangs as $lang)
{
$this->widgetSchema->setLabel($lang, $i18n->__($lang));
}
var_dump(array_keys($this->getEmbeddedForms()));
}
}
class treeActions extends autoTreeActions
{
public function executeEdit(sfWebRequest $request)
{
$this->tree = $this->getRoute()->getObject();
echo "action::edit->before getform():<br/>\n";
$this->form = $this->configuration->getForm($this->tree);
echo "action::edit->after getform():<br/>\n";
var_dump(array_keys($this->form->getEmbeddedForms()));
}
}
Je pensais que cela devrait faire l'affaire, mais la sortie est comme ceci:
l'action:: edit-> avant GetForm ():
réseau
0 => string 'seuzo_szolg_addresses' (longueur = 21)
1 => string 'hu' (longueur = 2)
2 => string 'en' (longueur = 2)
action :: modifier-> a GetForm près avoir():
tableau
0 => string '' seuzo_szolg_addresses (longueur = 21)
Qu'est-ce que la merde fait mes i18n formes intégrées disparaissent juste après la principale forme est initializaed? Toute aide vraiment appréciée.
oh, j'ai oublié de mentionner c'est symfony 1.2.7 – posthy