Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Symfony] Locale en, fr, etc..et Encore pour minjs

    17 octobre 2018 à 12:52:02

    Bonjour,

    J'avais ouvert un topic pour quelques problèmes twig dont la traduction et le package Encore, or mes problèmes aujourd'hui ne sont plus les mêmes ( j'ai résolu une partie de mes questionnements grâce à mes recherches ), je refais donc un topic.

    A l'heure actuelle je sais exactement comment éditer mes feuilles de traduction, comment set le domaine pour une page twig etc..

    Le problème c'est que j'ai ma locale qui vaut 'en' par défaut, alors que dans le fichier translation.yaml j'ai bien: ''%locale%'', qui est censé être une variable et la locale est censée être prise en compte en fonction des préférences de l'utilisateur ( notamment grâce au navigateur ), comment la locale de langue est elle choisi ?

    Deuxième petit soucis:

    J'ai réussi à minimaliser mes feuilles de style css, pour avoir un app.css et un app.js d'une page, or le .css n'est pas réellement minimisé quand je build le tout, je sais pas exactement pourquoi, pourtant tout se met bien dans le même fichier. De plus, je ne sais pas comment minimiser également tous mes JS.. !

    Et une dernière chose,

    J'ai actuellement au niveau des routes, cette organisation:

    /pages ( /, connect, disconnect, getstarted )

    /dashboard/pages ( /, settings, etc)

    1) je souhaite faire un systeme de parrainage lors de l'inscription comme suit:

    /getstarted/parrainid

    Dois-je rajouter * @Route("/getstarted/{idduparrain}", name="getstarted") en dessous du * @Route("/getstarted", name="getstarted") ? Si oui, cela ne fonctionne pas chez moi..

    2) je souhaiterais faire en sorte que tous mes sous domaine soient " actifs ":

    machin.domaine.com pointe vers /soussite/machin

    J'ai vu que c'était réalisable avec d'url rewriting, d'autres solutions avec twig ou pas ?

    Merci d'avance

    -
    Edité par Misterboboorox 17 octobre 2018 à 13:08:37

    • Partager sur Facebook
    • Partager sur Twitter
      17 octobre 2018 à 13:32:13

      Salut,

      Toutes tes questions me font dire que tu n'as pas lu la doc surtout la partie des traductions, il n'a jamais été dit que %locale% dépendait des préférences de l'utilisateur https://symfony.com/doc/current/session/locale_sticky_session.html . Tu as la méthode getPreferredLanguage de la classe Request pour obtenir la langue du navigateur https://api.symfony.com/4.1/Symfony/Component/HttpFoundation/Request.html#method_getPreferredLanguage 

      Il faut prendre le temps de savoir comment Symfony fonctionne et non vouloir aller trop vite.

      1- Revoir la doc sur le routing

      2- Je ne pense pas que ça soit du domaine de twig

      Pour ma part, si tu conserves cette façon de travailler, bah ça risque d'être difficile.

      -
      Edité par WillyKouassi 17 octobre 2018 à 13:32:53

      • Partager sur Facebook
      • Partager sur Twitter
      le bienfait n'est jamais perdu
        17 octobre 2018 à 13:46:30

        J'ai effectivement bien lu la doc, en tout cas pour les traductions.

        J'ai également vu le fichier translation.yaml qu'ils proposaient, or ils ne parlent que d'une seule langue, j'ai vachement été perturbé par les bouts de codes incompréhensibles pour moi qui travaille en procédural depuis plus de 7 ans et qui touche à la POO que depuis 2 ans de manière beaucoup plus simple.

        N'empêche que tes commentaires de 2 lignes m'ont vachement aidé vu qu'en retournant sur la page de la doc translation de symfony, j'ai compris des choses qui du coup, n'étaient pas compréhensible avant.

        Cependant j'ai toujours un petit soucis ( qui doit être bidon ), au niveau de mes formulaires, sur mes labels, j'ai ceci:

        {{ form_label(formConnect.email, 'form.label.email'|trans, {'label_attr': {'class': 'control-label'}}) }}

        Symfony me sort de petites erreurs au niveau de mon 'form.label.email'|trans: il va chercher la traduction dans 'messages' alors que j'ai bien le '{% trans_default_domain 'connect' %}' plus haut ( cette page-ci extand une page base.html.twig qui elle check le domaine 'general' pour les traductions ). Une idée? 

        Je relis la doc du routing cette après midi une nouvelle fois

        Et super, merci, c'est bien ce que je pensais 

        -
        Edité par Misterboboorox 17 octobre 2018 à 13:49:25

        • Partager sur Facebook
        • Partager sur Twitter
          18 octobre 2018 à 14:15:10

          Il faudrait vider ton cache et faire en sorte que trans_default_domain soit dans le template ou tu appelles form_label pas dans un template parent
          • Partager sur Facebook
          • Partager sur Twitter
          le bienfait n'est jamais perdu
            18 octobre 2018 à 18:44:45

            Il se trouve que justement j'en ai un dans le template parent pour gérer les traductions "basiques": menu, footer, etc.. et j'ai celui-ci dans le template ou j'appel mon form.label
            • Partager sur Facebook
            • Partager sur Twitter
              19 octobre 2018 à 0:11:47

              Je ne comprends pas trop, si tu as un fichier x.html.twig qui comporte ton form_label, il faut ajouter ton trans_default_domain dans ce fichier et au besoin vider ton cache. Tu peux aussi des formtype préciser le domaine.

              -
              Edité par WillyKouassi 19 octobre 2018 à 0:22:57

              • Partager sur Facebook
              • Partager sur Twitter
              le bienfait n'est jamais perdu
                19 octobre 2018 à 16:48:10

                j'ai ce schema:

                fichier base:

                - trans default domaine "general"

                [debut du template de la page base]

                [block content]

                [fin du template de la page base]

                fichier test:

                - extand base

                - trans default domaine "test"

                [debut du block content]

                [template de la page test]

                [fin du block content]

                Au niveau de la page base.html.twig tout se passe bien

                Au niveau de la page test.html.twig les traductions sont cherchees dans "messages.lang.extention"

                • Partager sur Facebook
                • Partager sur Twitter
                  19 octobre 2018 à 16:52:02

                  Le trans_default_domain est-il dans le test.html.twig ?
                  • Partager sur Facebook
                  • Partager sur Twitter
                  le bienfait n'est jamais perdu
                    19 octobre 2018 à 17:07:42

                    Yes ! Les traductions marchent mais pas dans les formulaires php, il me faut absolument les déclarer dans le build du formulaire
                    • Partager sur Facebook
                    • Partager sur Twitter
                      19 octobre 2018 à 17:53:38

                      Dans mes tests, aucun soucis de traduction au niveau du label des champs des formulaires.
                      • Partager sur Facebook
                      • Partager sur Twitter
                      le bienfait n'est jamais perdu

                      [Symfony] Locale en, fr, etc..et Encore pour minjs

                      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                      • Editeur
                      • Markdown