Bonjour,

Une méthode d'administration des tables internationalisée avait déjà
été évoqué sur ce groupe. Cependant elle ne prenait en compte qu'un
seul champ internationalisé. Pour ceux que ça intéresse, voila le
lien :
http://www.symfony-project.com/trac/wiki/HowToHandlei18nDbFieldsWithAdminGenerator

Il existe une autre méthode pour gérer l'administration des tables
internationalisées:
http://trac.symfony-project.com/trac/wiki/HowToHandlei18nDbFieldsWithAdminGeneratorMethod2
Cette méthode permet par ailleurs de gérer plusieurs champs
internationalisés (un champ par culture).

Seulement voila, si j'ai bien compris mon problème (et oui, il y en a
quand même) cette méthode ne prend en charge que les cultures définies
sur le langage seulement (et non langage + country comme expliqué dans
le book). C'est à dire qu'il faut que la culture soit "fr" par exemple
et non "fr_FR".

J'ai donc modifié la fonction __call de la méthode proposée en ceci :
(http://hashbin.com/4a2.html)

  public function __call($m, $a)
  {
    $data = @split('I18n', $m, 2);
    if( count($data) != 2 )
      throw new Exception('Tried to call unknown method
'.get_class($this).'::'.$m);
    list( $method, $culture ) = $data;
    $language = substr($culture,0,2);
    $country = substr($culture,2);
    $culture = strtolower($language).'_'.strtoupper($country);
    $this->setCulture( $culture );
    return call_user_func_array(array($this, $method), $a);
  }

Les champs modifiés du generator.yml prennent donc la forme
"title_i18n_fr_FR" par contre, je ne sais pas pourquoi, mais la
description de mes champs dans generator.yml n'est plus prise en
compte par Symfony !!!
J'ai beau mettre "title_i18n_fr_FR:    { name: Titre FR, params:
disabled=false }", ni le titre ni le paramètre disabled ne sont pris
en compte dans le template généré !!
J'ai donc modifié le template pour qu'il rende les champs "enabled" et
qu'il change les titres des colonnes. L'édition et le listing des
titres fonctionne bien par contre la création d'un nouveau titre ne
marche toujours pas :-s

Si quelqu'un sait comment améliorer le truc, please tell me :-)

Merci


--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "Symfony-fr" 
de Google Groupes.
 Pour transmettre des messages à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour résilier votre abonnement à ce groupe, envoyez un e-mail à 
l'adresse [EMAIL PROTECTED]
 Pour afficher d'autres options, visitez ce groupe à l'adresse 
http://groups.google.com/group/symfony-fr?hl=fr
-~----------~----~----~----~------~----~------~--~---

Répondre à