Partage
  • Partager sur Facebook
  • Partager sur Twitter

Symfony 4.1 et bootstrap field fileType

Sujet résolu
29 juin 2018 à 16:05:42

Bonjour,

Voici une question que je n'ai pas réussi à résoudre pour les cracks de symfony.

 J'utilise Symfony 4.0 et le bootstrap 4.0.0. avec le layout bootstrap_4_layout.html.twig.

Tout va bien et mes formulaires correspondent à ce que je veux et notamment l'imortation de fichier. Voici l'image:

Quand j'update symfony vers la version 4.1.1, le même formulaire me donne pour ce champ:

Il s'agit du composant Symfony\Component\Form\Extension\Core\Type\FileType

Merci de vos conseils

  • Partager sur Facebook
  • Partager sur Twitter
29 juin 2018 à 16:37:44

Salut,

https://getbootstrap.com/docs/4.1/components/forms/#file-browser ? Ils ont simplement changer le rendu du type de champ.

  • Partager sur Facebook
  • Partager sur Twitter
le bienfait n'est jamais perdu
5 janvier 2019 à 6:58:01

Bonjour,

En fait il s'agit bien d'un bug bootstrap4 toujours non corrigé en ce début d'année 2019.

Il y a une parade à implémenter en jquery sur les pages qui chargent un formulaire contenant en bootstrap4 un champ de chargement de fichier:

Voici le lien:

https://github.com/twbs/bootstrap/issues/20813#issuecomment-400565761

Et voici le code correspondant:

$(document).on('change', '.custom-file-input', function () {
    let fileName = $(this).val().replace(/\\/g, '/').replace(/.*\//, '');
    $(this).parent('.custom-file').find('.custom-file-label').text(fileName);
});

J'ai testé sur mes pages et cela fonctionne parfaitement.

-
Edité par CarréDas1 5 janvier 2019 à 6:58:25

  • Partager sur Facebook
  • Partager sur Twitter
5 mai 2021 à 16:58:28

Ça ne m'a pas l'air d'être un bug, il faut enrichir la variable sass comme tel : 
$custom-file-text: (en: "Browse",fr: "Parcourir")

-
Edité par PaulALBERT4 5 mai 2021 à 16:59:14

  • Partager sur Facebook
  • Partager sur Twitter
6 mai 2021 à 9:41:58

Bonjour,

Déterrage

Citation des règles générales du forum :

Avant de poster un message, vérifiez la date du sujet dans lequel vous comptiez intervenir.

Si le dernier message sur le sujet date de plus de deux mois, mieux vaut ne pas répondre.
En effet, le déterrage d'un sujet nuit au bon fonctionnement du forum, et l'informatique pouvant grandement changer en quelques mois il n'est donc que rarement pertinent de déterrer un vieux sujet.

Au lieu de déterrer un sujet il est préférable :

  • soit de contacter directement le membre voulu par messagerie privée en cliquant sur son pseudonyme pour accéder à sa page profil, puis sur le lien "Ecrire un message"
  • soit de créer un nouveau sujet décrivant votre propre contexte
  • ne pas répondre à un déterrage et le signaler à la modération

Je ferme ce sujet. En cas de désaccord, me contacter par MP.

  • Partager sur Facebook
  • Partager sur Twitter
Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL