Importer TOUTES les villes de France dans votre application SYMFONY !

  Рет қаралды 6,030

YoanDev

YoanDev

Күн бұрын

Пікірлер: 36
@bernard-ng
@bernard-ng 2 жыл бұрын
50:58 hello YoanDev c'est super l'utilisation du service mais cependant ton service est couplé à la command dans ce sens que tu passes SymfonyStyle en paramètres, cette dépendance te rendra la tâche difficile si tu dois réutiliser le service dans un controller par exemple. tous les appels à $io peut rester dans la command car c'est là leur place et personnellement j'ajouterai un callback pour la progression dans la boucle merci pour la vidéo
@yoandevco
@yoandevco 2 жыл бұрын
Absolument d'accord avec tout ce que tu dis, l'idée était de rester "simple" et la vidéo fait dèja une heure ha ha ha ^^ J'épingle ton commentaire pour les viewers :)
@bernard-ng
@bernard-ng 2 жыл бұрын
@@yoandevco Génial ! merci pour ton travail 🙏
@yoandevco
@yoandevco 2 жыл бұрын
Dans la vraie vie, j'envoie tous dans des logs et je vais boire un café hé hé hé
@bigpapa59460
@bigpapa59460 2 жыл бұрын
J'ai adoré le "j'ai pas les doigts en face des touches" 🤣
@yancsBanks
@yancsBanks Жыл бұрын
Merci beaucoup !!! J'avais galéré à l'adapté dans mon cas car j'avais beaucoup de données. Pour ceux qui auront le même probléme il faut simplement augmenter la taille de la mémoire dans la fonction execute de la commande avec cette ligne :ini_set('memory_limit', '1024M');
@ridamabrouk8879
@ridamabrouk8879 2 жыл бұрын
Salut Yoan, merci pour tes vidéos, ça aide en tant que junior dev, j'ai appris symfony durant ma formation ( sans docker ) et j'avais pas accroché mais la tu redonne goût a ce framework. Tu dis je copilot propose ce que tu allais faire et pour moi tu as fait de même en fin de vidéo en disant de dire à nos proches qu'on les aimes. Lol. Merci.
@cyraile
@cyraile 2 жыл бұрын
Une super vidéo comme toujours. Merci pour le partage. Tu es quasi synchro avec ce que je doit faire à chaque fois... c'est fou... Import CSV > une de mes prochaines missions... créer des commandes > le besoin est exprimés et il ne me reste plus quà mettre tout ça en place... MERCIIII encore..
@adnlan90
@adnlan90 Жыл бұрын
Hello Yoan merci pour ces explications claires et précises. Elles m'ont permis d'utiliser ceci dans un projet de migration e-commerce (WooCommerce vers Symfony 6) En vérité on s'en fout de la vitesse de frappe quand c'est dans le but d'expliquer cela ne sert à rien de sprinter sur les touches ^^ Si jamais un jour tu te lance dans le même système mais en lecture de fichier XML :P
@condepape8268
@condepape8268 2 жыл бұрын
Merci YaonDev pour cette vidéo intéressante et très instructive en tant que dev jr. J'ai 2 questions : 1/ Avant importation en base de données du fichier CSV, comment valider les données par le composant « Validator » au cas où certains champs seraient vides ou n'auraient pas la longueur ou le type de donnée requis ? 2/ Si le fichier contient par exemple plus de 3 erreurs lors de la validation, comment le déplacer dans un sous-dossier « erreur » pour ne pas l'intègrer ? Merci encore pour le partage.
2 жыл бұрын
Mais c'est qui ce Mickaël Andrieu à chaque fois, il est in-croyable xD Super vidéo, pour les personnes intéressées par les villes de France il va être amélioré bientôt 🙂
@yoandevco
@yoandevco 2 жыл бұрын
Hé hé 😘
@condepape8268
@condepape8268 2 жыл бұрын
Bonjour à tous, merci de m'apporter votre aide pour la suite sur cette vidéo intéressante et très instructive en tant que dev jr. J'ai 2 questions : 1/ Avant importation en base de données du fichier CSV, comment valider les données par le composant « Validator » au cas où certains champs seraient vides ou n'auraient pas la longueur ou le type de donnée requis ? 2/ Si le fichier contient par exemple plus de 3 erreurs lors de la validation, comment le déplacer dans un sous-dossier « erreur » pour ne pas l'intègrer ? Merci encore pour le partage.
@solohan8649
@solohan8649 2 жыл бұрын
Merci pour la vidéo Yoan et la découverte de la lib pour les csv, ce qui aurait été intéressant pour les performances c'est d'aborder la notion de bulk insert ou update avec Doctrine pour éviter de charger tous les objets en mémoire, ça peut être utile sur ce genre de traitement.
@NordTonne
@NordTonne 2 жыл бұрын
Génial! Plein d'infos: Service, command, style, outil csv et client bdd. Très bien le format, car tes "galères" me montrent (que tu es humain ;) et comment s'en sortir avec la logique symfony. Tu es le meilleur. Est-il possible de diffuser les vidéos du samedi 1 heure plus tôt? On aurait 1h de moins a attendre chaque semaine...
@joelp5343
@joelp5343 2 жыл бұрын
super cette vidéo ! Au-delà de l'import de CSV en ligne de commande je ne connaissais pas Dbeaver, merci pour le partage
@bziletankeu3850
@bziletankeu3850 2 жыл бұрын
Démonstration très digeste.
@mathieuregnier2262
@mathieuregnier2262 2 жыл бұрын
Merci Yoyo tjrs au top ! j'adore tes vidéos courtes d'une heure 😂
@sangfroidniloi
@sangfroidniloi 2 жыл бұрын
Super approche ! J'ai du faire cela il y a quelques semaines, je suis content, ça ressemble beaucoup à ce que tu as fait, mais ta factorisation est beaucoup plus sympa. De plus, je ne voyais pas comment passer les messages dans SymfonyStyle, mais.... il suffisait de le passer en arguments dans le service :D Cool ! Merci pour tes vidéos !
@bigpapa59460
@bigpapa59460 2 жыл бұрын
Merci pour cette vidéo de qualité ! Cela va mettre super utile 😁 bon courage vivement samedi prochain pour une nouvelle découverte 🙏.
@michellapalus5284
@michellapalus5284 2 жыл бұрын
Merci Yoan. Très sympa et intéressant
@hfahari
@hfahari 2 жыл бұрын
Merci yoyo
@mohamedserrou7533
@mohamedserrou7533 2 жыл бұрын
Symfony devient hypper sympa avec vous🙏🏻
@yoandevco
@yoandevco 2 жыл бұрын
Merci beaucoup !
@YannCharlou
@YannCharlou 2 жыл бұрын
Salut @YoanDev, comment tu aurais géré le SymfonyStyle que tu passes au ImportCitiesService si ce dernier avait dû être utilisé par autre chose qu'une commande console ? (ex: un Handler avec le messenger component) J'aurais été tenté de créer le SymfonyStyle avec un StringInput vide et un BufferedOutput mais je trouve que ça laisse la classe de la commande très dépendante de la logique CLI. Est-ce qu'il y a truc plus malin à faire ?
@stampejj
@stampejj 5 ай бұрын
Un grand merci, il y aurait-il beaucoup de différence avec le fichier json ?
@BrunoLetertre
@BrunoLetertre Жыл бұрын
Bonjour, Bravo pour cette vidéo. Pouvez vous mettre le git en ligne? Merci.
@gamesngeeks
@gamesngeeks 2 жыл бұрын
Merci pour la vidéo. Par contre dans l'exemple, vu que l'on flush qu'une seule fois, le test de savoir si la ville existe déjà ne fonctionne pas pour le primo chargement. Et donc on peut se retrouver avec des doublons. Et enfin j'ai réussi pour dbweaver avec docker, merci
@emilie1977
@emilie1977 2 жыл бұрын
Ciao, moi j'ai fais une chose semblable au contraire, une command qui me fait un backup de la base de données en csv :)
@olivierlejeune1950
@olivierlejeune1950 2 жыл бұрын
Super vidéo comme d’habitude. Il y a tant à dire sur les commandes qui sont un super outil pour les traitements de masse asynchrones. Pour les CSV, il y a aussi la bibliothèque Serializer de symfony avec le normalizer csv, mais la csv league que tu nous as fait découvrir a piqué mon intérêt et je vais l’essayer. Merci pour la découverte du makefile, j’ai les yeux qui brillent, je suppose que c’est facilement lançable en Cron puisque c’est du bash. Par défaut avec php8, il ne faudrait pas rajouter le declare strict type au début de chaque fichier? Que penses tu de la nouvelle norme qui arrive qui dit qu’il ne faut plus créer de Services, mais les découper en pkus spécifiques via des Handler, Helper, Trait, Manager, etc.. D’ailleurs la méthode de lecture avec des paramètres en plus, serait parfait dans un trait pour être utilisable par tous les services qui pourraient en avoir besoin. Le symfonystyle est sympa et la progressBar aussi, mais il vaut mieux privilégier monolog (tout un sujet d’ailleurs ^^) pour garder des traces pour le client. Avec messenger, penses tu qu’on puisse gérer les lancements de Command via l’appli ? Avec un héritage sur la classe command, on peut centraliser les batchs et gérer des historiques en base et des file.lock pour stopper les déploiements CI-CD si un batch tourne. J’adore les command, il y a beaucoup de choses pour s’amuser. Encore merci
@godwin.k
@godwin.k 2 жыл бұрын
C’est ce que je voulais dire aussi que le composant Serializer intègre déjà un encoder pour le CSV .
@ziat1988
@ziat1988 2 жыл бұрын
Hello Yoan. Quand ce sera un très large CSV, genre de environ 1gb. Tu as des idées pour ça?
@ptitgris66
@ptitgris66 2 жыл бұрын
1 an et demi que j'utilise csv league mais le bundle a ses limites (et on fait de l'import / export).
@yoandevco
@yoandevco 2 жыл бұрын
Comme tout, il faut choisir le bon outil pour la bonne mission, tu as raison
@sebastiensansbelle
@sebastiensansbelle 2 жыл бұрын
Effectivement, on sentait que tu étais un peu fatigué... 😴 Peut-être que Copilot n'est pas super judicieux pour faire des tutos car tout ce code qui apparaît et disparaît en un éclair, ça déroute un peu (mon avis). Sinon très bien...
@yoandevco
@yoandevco 2 жыл бұрын
J'hésite pour Copilot car j'aime partager mon "expérience de développement* (au sens expérience utilisateur de développeur). Mais tu as raison, ça brouille probablement la pédagogie quelques fois. Je vais essayer de trouver un équilibre 👌
So Cute 🥰 who is better?
00:15
dednahype
Рет қаралды 19 МЛН
VIP ACCESS
00:47
Natan por Aí
Рет қаралды 30 МЛН
Chain Game Strong ⛓️
00:21
Anwar Jibawi
Рет қаралды 41 МЛН
Des recherches ULTRA RAPIDE avec TYPESENSE et SYMFONY !
45:15
PrunePy : Une Révolution
18:32
Loïc Rust
Рет қаралды 1,2 М.
SYMFONY UX AUTOCOMPLETE : Une PURE FOLIE
42:23
YoanDev
Рет қаралды 10 М.
Arrête de Ship Fast, apprends à Ship Smart 👀
47:55
YoanDev
Рет қаралды 1,7 М.
Un Workflow de pro avec Symfony 5 !
53:53
YoanDev
Рет қаралды 21 М.
24h dans la peau d'un stagiaire qui développe son SaaS
11:59
Ezis | Développeur web
Рет қаралды 7 М.
De la BOMBE : Symfony UX TWIG & LIVE COMPONENTS 💣
1:00:02
YoanDev
Рет қаралды 15 М.