Salut Mikael,

Je te remercie de ton aide, je viens de régler mon problème avec
succès!
Enfait je n'avais pas compris que le behavior i18n de doctrine
introduisait la culture du user courant dans le $lang... (quand j'y
pense il pouvait pas prendre grand chose d'autre! .... bref ;))
J'ai donc changer la méthode getCulture() de myUser.class.php pour que
par défaut la culture soit "en" (pour moi cela correspond à la version
internationalisée de mon site) et pour tous les autres qu'elle
corresponde à "langue_PAYS".

A noter qu'il faut changer la longueur de l'attribut langue du
behavior
actAs:
  I18n:
    length: 17 (au lieu de 2 par défaut)

J'ai mis 17 pour qu'il puisse ajouter aussi les culture du type
ja_JP_TRADITIONAL.

Si ça peut aider d'autres personnes ...

A+

On 14 août, 17:25, BenjaM1 <[email protected]> wrote:
> Je voudrais savoir comment faire pour que à la place d'enregistrer
> 'en' dans $lang Doctrine enregistre 'en_EN' à la création de l'objet
> sans qu'on ait à surcharger tous les save() des classes i18n ?
> En gros oui "Comment Doctrine gère cette culture ? " :)
>
> On 14 août, 17:16, Mikael Randy <[email protected]> wrote:
>
> > La culture de l'utilisateur, normalement, c'est toi qui la gère.
> > Ta question concerne quoi exactement ? comment construire cette culture ?
> > Comment Doctrine gère cette culture ?
>
> > Le 14 août 2009 15:12, BenjaM1 <[email protected]> a écrit :
>
> > > Oui c'est en partie ce que je voulais faire sauf que tu rajoutes la
> > > langue et donc construit la "culture complète", seulement comment je
> > > peux le faire ? Ou se passe la création de la traduction d'un objet ?
> > > directment dans le behaviour Doctrine ?
>
> > > On 14 août, 14:48, Mikael Randy <[email protected]> wrote:
> > > > Bonjour,
> > > > Le principe d'internationalisation (i18n) et de localisation (l10n) se
> > > base
> > > > sur une notion : la culture.
> > > > Cette culture est le champ ajouté à la clé primaire dans les tables 
> > > > i18n.
> > > > Je pense que tu dois avoir l'habitude de faire un raccourci en utilisant
> > > > uniquement la langue ('en', 'fr', ...) or, la culture complète, c'est la
> > > > langue suivi de la localisation (fr_Fr, fr_BE, en_EN, en_US, ...) qui
> > > permet
> > > > d'isoler de manière unique un pays.
> > > > Il faut donc que tu modifies les cultures que tu utilises pour embarquer
> > > ce
> > > > genre d'information, et donc stocker la distinction par langue et par
> > > pays
> > > > ;-)
>
> > > > Le 14 août 2009 13:25, BenjaM1 <[email protected]> a écrit :
>
> > > > > Bonjour à tous,
>
> > > > > J'ai besoin de l'aide de personnes maîtrisant l'i18n et l10n avec
> > > > > Doctrine.
>
> > > > > Dans mon schéma toute mes classes sont i18n. Or dans le fonctionnement
> > > > > de mon site je ne connais pas par avance les pays (et donc langues)
> > > > > qui vont être ajoutés au cours de sa vie et donc il peut y avoir
> > > > > plusieurs pays partageant la même culture (US et En typiquement)
>
> > > > > Ce que je voudrais c'est, plutôt que de stocker la culture dans le
> > > > > champs $lang de mes classes, stocker le pays.
>
> > > > > J'ai vu dans le behaviour i18n de doctrine un paramètre $options qui
> > > > > est un tableau mais je ne pense pas que ça puisse m'aider.
>
> > > > > Avez-vous une idée de comment je peux faire ça ?
--~--~---------~--~----~------------~-------~--~----~
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 à