Session du 18 septembre 2025 à 21h00
Développement Web & Frameworks
Deviens membre Premium magic_button
Cette session de mentorat est réservée aux membres Premium. Rejoignez-nous pour accéder à toutes les rediffusions des sessions de mentorat !
Premium
- check +100h de formations
- check +180 exercices de code
- check +100h de mentorats en rediffusion
- check 20 projets
- check Mentorats groupés hebdomadaires
- check Support individuel avec nos mentors
Session de mentorat Django
Nous allons voir comment implémenter l'authentication de manière très simple et avec les réseaux sociaux (Google, Facebook, Github...) dans un projet Django, avec django-allauth.
00:00:00 :J'ai failli oublier d'enregistrer.Génial. Donc voilà, je demandais qui utilisaitdu coup le système d'authentification de Django, les logins et ainsi de suite. J'ai vu qu'ils sont prêts à l'emploi. J'ai fait un mentorat
00:00:16 :pas la semaine dernière, il y a deux semaines dessuset en fait le mentorat que je fais aujourd'hui c'estune grosse continuité parce que là c'est vous allez voir qu'il y a un moyen de se simplifierl'authentification encore plus qu'avec les classes de Django tout de près. Là c'est vraiment simplifié dessus simplifié et c'est trop bien.
00:00:34 :Alors au début ça paraît lourd à installer, ça paraît un peu nébuleuxmais vous allez voir que c'est vraiment tout simple.Comme je pars vraiment de zéro là, on ne voit pas mon écran, c'est bizarre. Vous voyez quoi dans la fenêtre là ?
00:00:49 :La pageDjango all out. Ouais c'est bien ce qu'il me semblait.J'ai bien dit enter screen, voilà.Là on voit de la plage, non ? C'est ça. Merci.
00:01:10 :Ok on va se plaindre aussi, on va l'appelerDjango all out.C'est décidé, DjangoAll out.On va se faire un petit environnement virtuel. J'aurais dû le préparer d'avance parce que tout le monde sait faire
00:01:29 :le truc barbant quoi, mais j'aurais pu le faire avant. Ok j'ai créé mon environnement virtuel, hop je me dépêche parce que ça c'est...Alorssi je reprends l'exemple dede Annabelle qui est pas Buffalo Django, je vais te montrer un peu comment ça se passe si tu veux l'initialisation d'un projet au passage.
00:01:48 :Ok alors, on va installer Djangode manière simple. On voit bien mon écran, j'ai agrandi peut-être un petit peu là pour l'instant.Est-ce que là, comme ça, ça va ou pas ?
00:02:09 :Ou c'est pitié encore ?Ça va, c'est mieux.Bon j'ai installé le Django, basique. Maintenant j'ai sourci mon environnement virtuel, hopet on va commencer un projet qu'on va appeler Project. Simplement, quand j'ai pas l'imagination, je fais ça.
00:02:29 :C'est parti. Allez, on va ouvrir les dossiers.Hop, copilot, on va le faire après si on en a besoin. On va organiser ça ici, tac, ok, donc
00:02:43 :mon environnement virtuel c'est bon, on va vérifier si je suis bien dans le bon.Hop, je suis bien dans Django. Ok, c'est parti, on va grossir un peu l'image. Est-ce que là, ça c'est grand ?
00:02:54 :Oui, ça c'est grand.Est-ce que là, ça c'est grand ?Ok, sinon j'aurais agrandi un petit peu, mais c'est que je vous rends petit. Ok, ça m'arrange si ça vous va. Ok, c'est parti. Donc là,
00:03:12 :on va utiliser le manager qui est là, le .py,pour se créer une application qu'on va appelerBounce.Ouais, je vais peut-être en faire plusieurs.
00:03:30 :Parce qu'en fait, on ne va peut-être même pas faire ça, je vais faire sans.On va faire sans cette application-là, on va y aller directement en fait.
00:03:44 :Parce qu'on va faire ça au plus simple possible et donc on n'aura même pas besoin d'application à compte dans ce cas-là.Donc Django, load ici.
00:03:52 :Alors j'ai un problème du décran qui se fiche, c'est génial. Hop.Voilà, vous avez le lien vers la bibliothèque, ça vous permet en fait de gérerl'authentification standard,login, logout, sign up basique, comme on ferait déjà avec Django.
00:04:08 :Mais en plus, ça vous permet d'utiliser, vous allez voir,d'utiliserénormément deréseaux pour se connecter.Genre on peut utiliser notre compte Dropbox pour se connecter sur l'application Django.
00:04:27 :Alors les plus connus, il y a Facebook.Donc on pourrait très bien se connecter avec Facebook, mais ce soir, je vais vous montrer Google.J'ai déjà fait, et en plus, Google,l'API, elle est un peu chiante, alors je vais vous la montrer un peu comment elle fonctionne.
00:04:40 :Même moi, ça me fait galérer.Et je vais vous montrer la deuxième, on aura le temps. GitHub, qui lui, est facile à mettre en place, voilà.
00:04:48 :Je vous conseille, si vous avez le temps, d'aller voir un peu la doc, elle est bien faite.Au pire, un petit peu d'IA avec,on s'en sort facilement, quoi.
00:05:00 :Mais attention, parce que l'IA,elle ne prend pas en compte toutes les dernières nouveautés qui sont sorties sur ce,sur cette librairie, et il n'y a pas longtemps, moi, je ne sais pas comment, je suis tombé sur, un peu sur les mises à jour de,quand on appelle ça les change logs, là, les releases.
00:05:16 :Et en fait, il y a carrément des noms de constantes qui ont changé.Et ça, j'ai fait exprès de l'envoyer à l'IA,et elle dit, non, ça n'existe pas, c'est avec Django à l'autre.
00:05:24 :Et en fait, si, mais c'est juste qu'elle ne sait pas, quoi, ça vient de sortir.Donc, ok, c'est parti.Donc là, on va aller s'installer la librairie,donc on va partir, on va aller dans l'installation, je vais vous montrer un truc.
00:05:37 :Donc, ils vous disent, vous pouvez installer Django à l'autre, donc ça, c'est la version basique.Mais en fait, si vous voulez utiliser tout ce qui est,comment on appelle ça, les comptes sociaux, donc,Google, Facebook, YouTube, vous allez utiliser, ici, le social account avec.
00:05:51 :Vous m'arrêtez, hein, si jamais il y a un truc, vous ne me levez même pas la main,vous m'arrêtez, vous me coupez la parole, ok ?
00:06:00 :Ça vous va ?Ok. Donc, pour l'instant, rien de fou.Hop, on installe ça.Bon, vous voyez, il y a pas mal de petites choses, quand même.
00:06:12 :Voilà. Parce que je pense que si on le faisait maison, ce système-là, ça serait long.Donc, on a la chance d'avoir tous les réseaux intégrés dedans, c'est vraiment génial, vous allez voir.
00:06:24 :Ok, donc là, on est là, on a installé Django Outlast.Maintenant, il y a plusieurs choses qu'on va aller copier.Hop là.C'est un copier qu'on va aller dans les settings.
00:06:37 :Si vous voulez, on va se mettre en français.Hop, hop. On va voir s'il est assez fort l'ami copilot.Donc là, on va utiliser Allout.
00:06:50 :Ok, il me propose ça.Allout.account. Ok, on va en avoir besoin.Allout. Ok, très bien.Euh...Pourquoi il veut que je fasse ça ? Ok.
00:07:02 :On va avoir besoin, du coup, de Allout.C'est ça, de Google.En fait, ce qu'il se passe, c'est que vous allez intégrer...Alors, je pense qu'il va mettre dans la doc.
00:07:15 :Je ne sais plus où il le met.Je crois qu'il montre une façon de le faire.Installation, quick start, s'il n'y a pas un quick start.
00:07:22 :Voilà.En fait, à chaque fois que vous allez voir utiliser un des réseaux sociaux,vous allez juste aller ici, le renseigner dans les applications installées.
00:07:32 :Vous allez voir à quel point c'est facile.Donc, voilà.On a mis Google et on a dit qu'on voulait aussi GitHub.Donc là, hop.Euh...
00:07:43 :Non, je ne veux pas de Facebook.On ne va pas faire Facebook.On va faire GitHub.Hop, voilà.Donc là, il vous faut, déjà, la base.
00:07:52 :C'est ça.Ok, pour avoir l'autre normal.Et tout ce qui est social, c'est ça.On a nos deux blocs.Euh...Ok.Euh...Alors, ce qu'il faut maintenant penser à faire,c'est qu'il faut aller ajouter un middleware.
00:08:07 :Hop.On va le mettre à la fin.Et on va se le noter.Comme ça, on va l'avoir.Hop là.On va se mettre all out middleware.
00:08:15 :Tac.Et il s'appelle Django.Alors, non.Non, ce n'est pas ça du tout.C'est euh...Je ne sais pas ce qu'il me dit.C'est, je pense, par all out.
00:08:25 :C'est all out.Ok, c'est ça.Voilà.Donc, il vous faut ce middleware là.On m'entend assez fort dans la vidéo ou pas ?Est-ce que j'ai changé de micro là où je suis ?
00:08:35 :Ah oui.Ok.Donc, il va vous...Donc, comme ça, on a bien séparé les choses.On voit qu'il faut un middleware bien spécifique.Ok.Euh...
00:08:47 :Alors, j'essaie de vous montrer quelque chose.Parce que du coup, il y a plein de settings que vous ne voyez pas avec Django,mais qui sont déjà dans un fichier, dans le code source.
00:08:55 :Tout ce que vous mettez ici, ça va être pour surcharger ce code source.Alors, si je vais là, je vais mettre django.hub.Hop.Et quand vous avez un doute, vous savez...
00:09:07 :Moi, souvent, j'ai une merde.Et ici, je vais dans settings et il s'appelle...Je suis un petit peu perdu, en fait.Voilà.C'est là.Global settings.
00:09:16 :Voilà.Et ça, c'est le fichier de settings que vous, vous surchargez à chaque fois.Donc, il y a plein de trucs qu'on voit.Et tout ça, c'est ce que vous surchargez.
00:09:23 :Genre...Genre...La database, il est là.La base, il est vide.Voilà.Et tout ça, c'est ce que vous surchargez quand vous mettez, par exemple,Installed apps.
00:09:34 :Voilà.Ce genre de choses-là.Donc, par défaut, il y a ce qu'on appelle...Autentication.Il n'est peut-être pas là.Alors, l'autentication, il doit être là, je pense.
00:09:47 :Par exemple, ça me paraissait bizarre.Voilà.OK.Donc, par défaut,ça, c'est ce qu'utilise Django pour l'authentification.C'est son système de back-end à lui.Donc là, ce qu'on peut faire, c'est qu'on peut aller le repliquer.
00:10:00 :Donc, c'est bien un modèle back-end.Je l'ai en tête,mais je vous montre un peu comment vous pouvez vous retrouverpour voir tout ce qui est un peu par défaut dans Django.
00:10:08 :Voilà.Hop.Il le met à quel endroit, d'ailleurs ?Ça m'intéresse.Ça, je l'ai déjà touché, ça.Il n'y a pas longtemps, d'ailleurs.Le passeport d'achat.
00:10:17 :C'est un peu petit, d'ailleurs, là-haut.Tac.Hop.Donc...Je vais le mettre là, juste derrière.OK.Tac.Donc là, on va remettre, en fait,l'authentification, le back-end de Django.
00:10:35 :Mais en plus, on va les ajouter.Donc, pour que ça soit propre, on va se faire...Tac.Hop.Tac.Hop.Et qu'est-ce qu'il propose ?
00:10:45 :À l'autre...Euh...OK.C'est ça, exactement ça.Hop.Donc, en fait, il faut, du coup,modifier, entre guillemets,ce qui va être utilisé pour le back-end,par défaut, de Django.
00:10:56 :Hop.Donc, on va rajouter ici, à l'autre.Donc, vous voyez,c'est un peu de configuration au début,mais rien de compliqué.Et comme j'aime bien faire des fois,on va faire un truc...
00:11:06 :Euh...Je vais me mettre où ?Je vais me mettre là.Allez, hop.Je vais me mettre en bas.Puisque là, on va s'amuser à envoyer des mails.
00:11:13 :Mais je n'ai pas envie de m'embêterà configurer un serveur mail avec Django.On va envoyer des mails dans la console.Donc, on va se mettre un email back-end.
00:11:21 :Euh...Back-end.console.C'est ça.Hop, voilà.OK.Donc, il le fait pour nous.Donc, en fait, maintenant,tous les mails qu'on va envoyeravec notre projet Django,ils vont arriver directementdans la console.
00:11:34 :Comme ça, c'est plus simple.On n'a pas à connecter une boîte mail,ainsi de suite,à aller cliquer sur la boîte mail.Pour les exemples, c'est très, très bien.
00:11:41 :Je le fais pas mal en...Comment dire ?En déf, ça, c'est pratique.Ça évite d'envoyer 30 mails.Donc, on peut tester plein de choses.
00:11:50 :Donc, voilà.Ensuite, il faut penser.Alors, imaginez bien qu'il faut aller dans l'URL.Parce qu'on va avoir besoin d'accéderà des URLs, entre guillemets,toutes faites.
00:12:02 :Donc, on va...On va prendre le include.Euh...OK.C'est ce que j'allais faire.C'est ce que l'a fait la doc aussi.Parfait.Et donc, on a appris l'URL de Alloat.
00:12:17 :Donc, on est arrivé là.Maintenant, on ne va plus se prendre la tête.On va aller...Ainsi.Tac.Euh...On n'a pas besoin de faire un migration.
00:12:28 :On va se faire un migrate.OK.Donc, là, il m'a fait un migrate.On va se créer un super utilisateur.Annabelle, tu n'as jamais fait de Django.
00:12:39 :Pour l'instant, ça va ou je vais trop vite ?Non, ça va.Je n'ai pas fait de Django,mais j'ai fait Symfony.Donc, pour le moment, ça va.
00:12:46 :OK.Tu vois, je fais des choses un peu standards à Django.Le Alloat, c'est vraiment un truc à part,une librairie à part.Mais, les migrates,créer un super utilisateur,ça, c'est des choses que tu feras tout le temps.
00:12:57 :OK.Tac.Je vais mettre ma vraie adresse mail.Non, parce que je vais...Parce qu'on va créer un utilisateur avec cette adresse mail-là.Je vais en mettre une bidon.
00:13:11 :Non, je vais mettre mon adresse docstring.Docstring.Je vais essayer de me quantifier avec la docstring.Non, je vais mettre mon normal.Je vais faire comme ça.
00:13:23 :Gmail.com.Je chipote un peu, mais ce n'est pas grave.Tac.Tac.Alors.Tac.Donc là, on a...Ce qu'il faut dans l'arrêt de base,on a déjà un utilisateur.
00:13:36 :Je ne vais pas créer un modèle du tout,parce qu'on ne s'en servira pas ici.On pourrait à la limite se créer une vue de profil,mais encore non.
00:13:42 :Ce n'est pas très grave.OK.On va se lancer...On va aller lancer le serveur.Donc.Hop.On va lancer le serveur.Et on va voir ce qui va commencer à se passer.
00:14:00 :Hop. OK.On est là.Donc, c'était dans account, c'est ça ?Hop.OK.Donc...Attends, je vais essayer de faire bugger un peu le truc exprès.
00:14:13 :Voilà.Donc là, en fait, ça vous montre...C'est assez grand, là, ou pas ?Ou c'est moyen ?Moyen.Moyen.Ouais, c'est moyen.Ouais, c'est bien.
00:14:27 :OK.Donc, là, en fait, vous voyez,ça, c'est toutes les URL qui sont maintenant disponibles avec Allout.Donc, j'ai fait exprès de le faire bugger,comme ça, au moins, ça apparaît dans le debug.
00:14:39 :Donc, on a logout.Je ne sais même plus comment on peut s'en servir.Bref, login, logout, OK.Le sign up, l'authenticate, ça, je ne m'en suis jamais servi directement.
00:14:49 :On peut aller voir les e-mails, confirmer l'e-mail,passeport change, tout ça, quoi.C'est un truc de fou, confirmer l'e-mail.Voilà.Et tout ce qui est social, Google, GitHub.
00:14:57 :Vous voyez, en fait, il y a plein de vues déjà de créées.Donc, par défaut, ça va vous envoyer dans le login.Donc, ici, je vais aller me connecter.
00:15:09 :Je me suis appelé comme ça.Alors, avant de me connecter, j'ai bien connexion.J'ai créé son compte.Là, vous voyez que, bon, c'est moche, mais c'est normal.
00:15:20 :On est d'accord que ça n'arrive pas, en fait, avec un template tout fait.Comme ça, vous êtes libre, après, de mettre les templates que vous voulez,et je vais vous montrer comment on fait.
00:15:27 :Donc, là, moi, j'ai juste installé Django Allout.Et là, rien qu'en accédant à Account, j'arrive sur le login, ici.Je vais, si je veux, faire ma création de compte.
00:15:39 :Donc, email facultatif, tout ça, vous allez voir comment on peut gérer ça.Connexion.Si j'ai mes mots de passe, hop, c'est prêt, quoi.Enfin, tout est prêt.
00:15:50 :Donc, par exemple, je me suis inscrit à quelle adresse ?À l'instant, je ne sais même plus.Celle-là, je crois.Si je fais ça, hop.
00:16:01 :Et vous voyez, ici, c'est dans la console,donc c'est un petit peu brut de décoffrage.Mais vous voyez, ici, j'ai bien reçu un mail.Et j'ai bien un lien, ici, avec un token pour aller reset mon mot de passe.
00:16:12 :Je ne vais pas aller jusqu'au bout.Enfin, je pourrais le faire.On va le faire pour le fun.Hop.Ici, vous voyez, maintenant, imaginons, tac, je suis en direct mail, j'arrive, tac.
00:16:21 :Nouveau mot de passe.Hop.Hop là.OK.Donc, là, mon mot de passe a été modifié.Maintenant, s'il veut me connecter.Hop.Du coup, j'ai modifié quelque chose, ici.
00:16:40 :Voilà.Il me connecte.Donc là, c'est normal, j'arrive sur N404.Mais c'est parce que, comment dire ?Ça redirige, en fait, vers une vue de profilqu'il faudrait créer ou modifier, en fait, la redirection.
00:16:52 :Voilà.Mais là, on ne va pas s'embêter.On ne va vraiment faire que du all-out.Donc là, ça recherche une vue de profil qui n'existe pas.
00:16:58 :OK.Voilà.Quelqu'un qui arrive.Alors, c'est Jean-Phi.Est-ce qu'il a réussi à se connecter ?Ouais, c'est bon.Salut, Jean-Phi.Je ne sais pas si tu m'entends.
00:17:17 :Salut.Salut, salut.Du coup, Jean-Phi, j'ai commencé, entre guillemets, il y a un moment,il y a peut-être un quart d'heure au moins.Du coup, tu arrives en pleine page de bug.
00:17:34 :Mais sinon, ça fonctionne.On est en train de faire du Django all-out, en fait.Je te résume en 30 secondes.Ça permet, en fait, dans notre projet,je ne sais pas ce que je voulais faire.
00:17:47 :Je ne voulais pas le faire, mais non plus, ce n'est pas grave.On a juste installé une librairie, Django all-out.Dans les settings, j'ai ajouté quelques applications installées ici,dont Providers, Google et GitHub.
00:17:59 :Un middleware, et je ne sais plus ce que j'ai installé.J'ai installé aussi, je ne sais plus, le back-end,le new et ça.J'ai surchargé cette constante.
00:18:11 :Et dans les URL, j'ai juste ajouté account et j'ai inclus les URL.Et donc, je disais que, voilà,ici, voilà.Donc, je suis connecté maintenant.
00:18:25 :Et donc, en fait, on a plein de vues qui sont déjà préconfigurées.Donc là, vous voyez que je suis connecté.Bon, à chaque fois que je suis connecté,s'il y a un verre de vues de profil, ça va buguer, ce n'est pas grave.
00:18:36 :C'est juste pour l'exemple.Une fois que je suis connecté, j'ai des vues pour me déconnecter,pour voir les comptes associés.Je m'en souviens plus, c'est quoi déjà ça ?
00:18:43 :Oui, c'est ça, c'est bon.Les comptes associés.Modifier le mot de passe.Et ici, changer l'email.Voilà, on peut le rendre principal parce qu'on peut avoir plusieurs emails.
00:18:52 :Donc, je peux aller en rajouter une deuxième.Je peux aller mettre g.com.Et là, j'ai deux emails.Et je peux aller rendre principal une des emails.
00:19:01 :Voilà.Donc là, bon, j'ai parti d'email parce que le mail n'existe pas.Je peux aussi aller...Je peux même, du coup, si je fais ça,retirer l'adresse mail.
00:19:13 :Enfin, vous voyez, c'est vraiment ultra flexible.On va aller voir ce qui passe dans l'admin.On peut aussi aller modifier le mot de passe.Je vais remettre mon mot de passe de base.
00:19:27 :Tac, tac.Voilà.Je suis revenu là.On va aller dans l'admin, maintenant, voir un peu ce qui se passe.Donc, vous voyez, là, juste à casser d'un go à l'autre,tout ce que je fais là, en fait, j'ai créé pas une seule vue.
00:19:44 :OK.Donc, comment ça se passe ?On a...Donc, il y a Gabriel qui est ici.Si je vais dans adresse email, je peux voir toutes les adresses emailet à qui elles sont associées.
00:19:55 :Si c'est la principale ou pas et si elle a été vérifiée.Donc là, on voit que je ne l'ai pas vérifiée.Et on pourra voir...
00:20:01 :On verra après tout ce qui est compte social et tout.Donc, en fait, si j'ai plusieurs adresses email,on pourra voir toutes nos adresses email ici.
00:20:08 :Voilà.Donc, super pratique parce que vous avez déjà ça créé dans l'administration.OK.Voilà.Donc, vous avez les accessoires là.Hop là.OK.J'ai changé quelque chose.
00:20:18 :OK.C'est bon.OK.On va y retourner.Donc, ce que je voulais vous montrer...Est-ce que je fais le login ?Je réfléchis à ce que je peux vous montrer.
00:20:33 :Le sign-in.Ouais.Allez.Hop là.On va aller sur Accounts.OK.Création de compte.Donc là, vous voyez, si on crée un compte à partir d'ici,il vous dit que l'email est facultatif.
00:20:47 :Alors...Avant de faire ça, je voulais...Non, si, on va commencer à faire ça.On va laisser ça.On va faire ça.Je réfléchis en même temps.
00:20:57 :C'est pour ça.OK.Donc, l'email est facultatif.Ce qu'on pourrait très bien choisir ici dans notre projet,on va se dire...Je suis où, là ?
00:21:06 :On va réduire un peu ça parce qu'on s'en fiche.Dans les settings,on va être tout en bas.Donc là, on va se mettre à l'autre.
00:21:16 :Je mets une constante.Donc ça, je sais ce que c'est.Hop.Il y a...Alors, c'est...Account.Email.Voilà.Ça recharge mon serveur.Logiquement, ça a dû le recharger.
00:21:31 :Si je suis ici, je recharge.Hop, vous voyez, il est facultatif.Maintenant, il est obligatoire.OK.Donc, vous voyez que juste avec des constantes,on va pouvoir s'amuseret paramétrer un peu ce qu'on veut.
00:21:42 :Donc là, l'email, maintenant, est devenu obligatoire.Le nom de l'utilisateur aussi.Mais je vous laisse deviner que du coup...Account.Plus j'ai un name, il va le trouver.
00:21:55 :Voilà.False.Si je recharge...Hop.Plus j'ai un name, ça disparaît.OK.Je vais l'enlever.On va le laisser commenter pour l'instant.Tac.Ensuite, je voulais vous montrer aussi un autre qui est sympa.
00:22:13 :C'est quand vous êtes sur le...Connexion.Donc là, vous vous connectez à votre nom d'utilisateur.OK.Par défaut, c'est comme ça que ça marche.Ce qu'on peut faire ici...
00:22:23 :Donc ça, par contre, vous ne le retrouvez pas.L'IA ne pourra pas vous le dire parce qu'elle n'est pas à jour.C'est ça que j'ai vu dans la doc.
00:22:29 :C'est tout nouveau.On peut se dire...Alors, on pouvait déjà le faire avant,mais pas de la même façon.Hop.Login.Et vous allez voir qu'il ne va même pas le trouver sur mes...
00:22:40 :Ces méthodes.Voilà.Et là, vous allez passer un truc.Hop.Vous allez lui dire...On va se connecter.Donc, actuellement, c'est...Une utilisateur.UserName.On va pouvoir lui dire...
00:22:54 :UserName.Immense.Email.Tac.OK.Ça recharge.Et si je fais ça...Hop.Bon là, on voit que c'est un peu caché ici parce que c'est mal fait.
00:23:04 :C'est...J'ai rien stylisé.Mais c'est nom d'utilisateur ou email.Maintenant, je suis connecté avec les deux.Voilà.C'est des choses, avec le Django, qui sont faisables de base.
00:23:14 :Mais en fait, là, vous avez une constante à le faire,et ça vaut le trait tout seul.Donc, c'est déjà un gain de temps de fou.
00:23:19 :Ça va pour l'instant ou pas ?Il me déteint.Ah oui ?Est-ce que je suis trop lent ?Est-ce que vous les avez plus vite ?
00:23:28 :Ou je reste comme ça pour l'instant ?Alors, moi, comme ça, ça me va.OK.Comme ça, suivant.OK.Je ne vais pas trop vite parce que, comme ça,vous pouvez un peu voir tout ce qu'il est possible de faire.
00:23:41 :Encore, on ne peut pas tout voir.Ensuite, quelqu'un qui n'a pas...Donc, on a vu qu'on pouvait vérifier son email.Quelqu'un qui n'a pas vérifié son email,il peut se connecter.
00:23:52 :Il n'y a pas de problème.Mais vous pouvez ajouter ici...Account.C'est email.C'est email verification.Normalement, je ne sais pas s'il va me le trouver.
00:24:03 :Voilà.Alors, il y a plusieurs options.Je ne les connais plus.Il faudrait aller voir dans la doc.On va s'amuser un petit peu.On va prendre un gratos.
00:24:15 :Je connais les options possibles.On va voir s'il va trouver.Je tente.Je suis un peu à l'arrache.On va bien voir.Qu'est-ce qu'il me fait ?
00:24:31 :Ah, il va le chercher sur le web.Pas mal.Il faut qu'il utilise le groc.Oui, j'avais vu que celui-là était aussi...Ça, c'est par défaut, je crois.
00:24:41 :Il me semble que ça...Si il a été voir dans la doc, c'est que, à mon avis, il a bon.Vous voyez ?Je vous laissera aller voir,mais vous voulez faire le test un petit peu avec l'IA,voir ce qu'il me sortait.
00:24:53 :Pas mal.Mandatorie, maintenant,c'est que si vous mettez ça,l'utilisateur, si son adresse mail n'est pas vérifié,il ne pourra pas se connecter.Il sera obligé d'aller la vérifier avant.
00:25:04 :Là, vous voyez qu'avec tout ça,on a déjà réussi à avoir un paramétrage ultra flexible.C'est ultra flexible dans le sens où,moi, j'avais fait un truc pour une boîte.
00:25:16 :Je ne connaissais pas de Django à l'autre.Ça avait l'air un peu nébuleux.Du coup, je ne l'avais pas trop utilisé.Et j'avais fait un petit peu tout ça à la main,ce système de login méthode,visant à mes emails,où du coup, il a fallu recréer des petites classes en plus.
00:25:28 :Mais si j'avais trouvé ça avant,en fait, c'est trop pratique.Donc, sur les projets,je pense que maintenant,ça va devenir ma librairie de base,l'essentiel.
00:25:36 :Donc, voilà.OK.Donc, on a vu plusieurs choses dans le menu.Je voulais maintenant vous montrer...Je regarde un petit peu.OK.Ça va, je ne suis pas trop en retard.
00:25:51 :Je voulais vous montrercomment on peut...Parce que là, quand on est ici,quand on regarde,le template, on est d'accord,ce n'est pas super.
00:26:00 :C'est un peu brut de décoffrage.Ça, vous avez possibilité de le customiser,mais vraiment de manière granulaire.Vous pouvez vraiment aller dans le détail.Comme ceux qui commencent à me connaître,moi, le HTML, CSS, ça me saoule.
00:26:16 :Donc, je vais vous montrer une version rapide de le customisersans rentrer dans le détail du détail.OK.Je réfléchis plus loin.Je vais le faire rapidement.
00:26:27 :OK.Déjà, on va créer un template.Merci.On va spécifier à Django, excusez-moi,qu'on veut utiliser ici un dossier template.Alors, pour Annabelle qui ne connaît pas Django,là, je n'ai pas créé l'application.
00:26:47 :Donc, tu ne pourrais pas le voir.En gros, sur le principe,on va créer des applications avec Djangopour chaque fonctionnalité qu'on va implémenter.Si c'est un magasin, on va faire une application shop.
00:26:58 :Pour gérer les utilisateurs, on va faire une application account,ainsi de suite.Django reconnaît tout ce qui est les fichiers HTML.Il va les reconnaîtretant qu'ils sont dans un dossier template dans les applications.
00:27:11 :Ce qui veut dire que là,si je fais un mkdir template,vu que je suis hors application,il ne va pas le reconnaître.Donc, je suis obligé de lui spécifier ici,d'aller me dire qu'il faut reconnaître le dossier template qui est là.
00:27:27 :Je le spécifie ici.Donc, basedir, en fait,si on se rebase là,ça va chercher notre dossier qui est là.Et donc, je dis template.
00:27:38 :Alors, comment ça se passe ?Parce que là, moi, ça va être…Je vais essayer de retrouver la page.Je dois avoir le lien.Je l'ai gardé de côté.
00:27:51 :Je vais couper les liens.Ils vous expliquent un peu une partie sur les templates.Je sais exactement ce qu'ils ont fait,parce que c'est une bonne pratique de le faire ici.
00:28:07 :Je l'ai pas mal.Alors, ils vous disent que vous pouvez,déjà pour faire une optimisation assez basique,aller surcharger, entre guillemets, ces templates-là.Là, déjà, vous allez faire beaucoup de choses.
00:28:21 :Rien qu'avec le base tout seul, ça fait pas mal de choses.Et après, ils vous mettent un peu de détailsavec tout ce qu'il y a de possible à faire.
00:28:29 :Vous descendez.Voilà, vous avez plein de petits fichiers HTML.Honnêtement, on ne va pas voir ça se faire.C'est qu'il y en a beaucoup.On va juste aller s'amuser à modifier celui-làet voir comment on peut le faire, entre guillemets, sans rien oublier.
00:28:42 :Donc, quand on regarde,AllowedLayoutsBase.html.OK.Donc, si je vais dans mon V1, ici.Alors, quand je vais dans librairie.Allowed.Alors, je dis quoi ?
00:29:01 :AllowedLayoutsBase.html.OK.Du coup, il m'aurait mis dans le template, peut-être.Voilà.Donc, c'est là-dedans.Je vais chercher là.Layout.Voilà.La première fois, j'avais galéré à trouver.
00:29:16 :Donc, déjà, c'est les trois fichiers HTML que vous pouvez surcharger.Alors, bien sûr, on ne va pas les surcharger directementdans le code source de la librairie.
00:29:24 :Mais au moins, ça vous permet d'aller récupérertoutes les infos qu'il y a.Tout ce que vous voyez, en gros, ici.Entre guillemets.Vous pouvez aller récupérer le fichier de base qui est là.
00:29:34 :Tac.Et ça, en fait, ce que je fais, c'est que je le copie.Et comme ça, toutes les informations qui sont dedans,je les garde et je les stylise.
00:29:41 :En fait.Et donc, je me suis copié, normalement, quelque part,un petit template HTML.Est-ce que j'ai tout prévu dedans ? Tac.Voilà.Donc, je me suis prévu un petit template HTML.
00:29:57 :Hop.Donc, tout ça, ce que je disais,on va le récupérer, on va le copier.Si vous avez besoin de customiser encore plus,vous pouvez faire pareil pour cela.
00:30:05 :Vous allez copier ce qu'il y a dedans.Tac.Vous allez customiser.Il n'y a pas grand-chose de base.Et après, vous allez avoir tous les petits fichiers HTMLpour le faire graduellement.
00:30:13 :Là, on ne va faire que celui-là.Hop.Donc, ça, je le ferme.Donc, il faut suivre, entre guillemets,comment dire ?Il faut suivre le même schéma que.
00:30:24 :Donc, template, new folder.C'est dans all out.Donc, on a un dossier all out.Ensuite, on va recréer, ici, les layouts.Comme eux.Voilà.Et dans les layouts, ici,on va se faire un nouveau fichier.
00:30:39 :Base.html.Hop.Boom.Et donc là, en fait, j'ai juste...Alors, j'ai un template tout faitque j'avais prévu pour ce soirparce que je n'avais pas codé du HTMLou même avec de l'IA.
00:30:50 :Ça, c'est plus intéressant.Le principe, c'est que j'ai récupérétoutes les informations qu'il y avaitdans le fichier base.htmlet j'ai décoré ici avec du bootstrap.
00:31:00 :OK ?J'ai juste mis du bootstrapparce que c'est bootstrap.Moi, je trouve ça génial.On trouve des templates partout.L'IA le connaît par cœur.
00:31:09 :Du coup, c'est facile de se fairedes templates personnalisés avec.Quand on n'est pas trop CSS.html.Comme ça, après,on n'a plus qu'à modifier le CSS.html.
00:31:17 :Et ainsi de suite.OK.Hop.Donc, si je retourne là...Voilà.On a déjà un truc plus cool.Donc là, juste avec un fichierque j'ai rajouté dans mon dossier template,que j'ai rajouté,que du coup, j'ai surchargé,j'ai un truc quand mêmebeaucoup plus sympa.
00:31:34 :Donc, vous voyez,je peux aller me fairema création de compte ici.Voilà.C'est quand même pas mal.Donc, je reviens là.J'ai mon mot de passe oublié.
00:31:42 :Voilà.Donc, si je le connecte,par exemple...Hop.Voilà.Vers profil.C'est normal parce queje n'ai pas créé de profil.Si je reviens là, voilà.
00:31:54 :Bon, là, ça ne rend pas bien, du coup.Ça fait un peu à l'arrache.Mais ce n'est pas le principal.Donc, vous voyez,ici, on voit l'adresse email.
00:31:59 :On peut en rajouter une.On peut aller voir les comptes associés,les comptes...Comment ça s'appelle ?Les comptes sociaux.Pour l'instant, on n'a rien.
00:32:06 :OK.Pour l'instant, ça vous plaîtou il y a des chosesqui vous paraissent un peu bancales ?Je fais une petite pause.Non, c'est bon.
00:32:19 :Moi, ça me plaît.OK.Personnellement, je trouve çatrès intéressant, en fait,pour la connexion.C'est un peu plus facile,en fait, l'authentification.Ah, ben oui, là,tu as tout, en fait.
00:32:34 :Avec la librairie, tu as tout.Moi, en général,ce que je m'amuse à faire,je ne sais pas...Je ne sais pas sur lequelje ferais aller celui-là.
00:32:45 :De toute façon,il va être abandonné,ce projet-là, je pense.Il veut là-dessus.Moi, en général,ce que je fais,c'est que j'ai toutes mes vues.
00:32:52 :Même avec Django,j'écris très peu de vuespour l'authentification.J'utilise des vues, ici,qui sont...J'ai fait un mentorat,il y a deux semaines, dessus.
00:32:59 :J'utilise des vuesqui sont, ici, de Django,de base,qui sont vraiment de l'utile.Je les surcharge directementdans les URL, quoi.Voilà.Mais je trouve que là,ce que je fais ici,là, c'est encore plus simple.
00:33:09 :C'est carrément plus simple.Donc...Voilà.Et donc,ça a déjà plus de gueule.Et maintenant, du coup,il est temps de passerà voir comment on peutfaire de l'authentification.
00:33:25 :On va se faire Google Editor.Parce que je l'ai déjà fait.Donc, Facebook,je pense qu'il va falloir un contrôle.Donc, ce soir,je pense que ça va être un peu galère.
00:33:35 :On pourrait se faire ça un jour,en fin de mentorat,de se faire rejeter Facebook.Ce projet-là,je vais le garder un petit peuen sandbox, à ce moment-là.
00:33:43 :Du coup,qu'est-ce que j'allais dire ?Oui.On va utiliser les...Comment dire ?Les réseaux sociaux.Alors...Ça, on s'en fiche.J'y réfléchis.Alors, il y a une façon de faire.
00:34:00 :La doc, elle est où ?Là.Non.Ouais.La doc, elle est là.Je vais vous montrer ça ici.Tac, tac, tac.Ouais, voilà.Ils utilisent, en fait,la social provider.
00:34:16 :Ici, c'est pourpouvoir utiliser, par exemple,Google.Vous allez mettre vos IDs,vos secrètes, ainsi de suite.Moi, je ne le fais pas ici.Alors, je ne me suis pas encoreposé la question si ça pouvaitposer problème, maisnormalement, non.
00:34:28 :Parce qu'en fait,il y a une autre façon de faire.Et moi, je ne le fais pas ici.Je le fais dynamiquementdepuis l'admin.Donc ça, au niveau de la doc,je ne le fais pas.
00:34:35 :Ils doivent le dire quelque part,d'ailleurs.Ça, je ne le fais pas.Tac.Voilà, les providers.Qu'est-ce qu'ils disent ici ?Voilà, ils vous le disent ici.
00:34:45 :Donc, ça y est,ils font la même chose.Je regarde si...Où est-ce qu'ils en parleraient,en fait ?Ok.Ouais, ouais.Configuration,provider, configuration.
00:34:56 :Ouais.Ok.Bon, juste, moi,je fais différemment.Hop là.Ok.Donc, on va faire Google.Je vous montre comment je fais.Hop.Donc, à chaque fois,ce qui est bien,c'est que pour chaque provider,ils vont vous dire...
00:35:10 :Ils vont avoir leur docpersonnalisé pour chaque.Et ça, c'est vraimenttrop, trop bien.Ok.Donc, ils vous disent,dans la salle de Zap,il faut ça.
00:35:18 :Il faut se rendre ici.Il faut faire tout ça.Alors, comment ça va se passer ?Je réfléchis rapidementsi je passe par l'admin.Bon, on va d'abord faire ça.
00:35:27 :On va aller dansla console.Ah, mais j'aurais bien voulualler avec mon compte.Hop là.Ouais, on va faire autrement.J'ai quel compte qui est installé ?
00:35:42 :Ouais, ok.On va faire ça,on va faire ça comme ça.Allez.Mince, je ne sais pasce que je voulais faire.Mince, je suis où ?
00:35:51 :J'ai fait une connerie.Hop là.Et là, je viensde la console Google.Hop là.Voilà.Donc, on va se créer du coupun faux projetpour ce soir,My Project.
00:36:03 :Donc là, on est un peudans la console de Google.Donc,je ne vais pas trop naviguer dessuspour ne pas vous montrerles clés secrètes.
00:36:10 :Bon, ça, c'est un projetque je vais supprimer après.Donc, on peut le voirsur le site.C'est pas très grave.De toute façon,il n'y a rien dessous.
00:36:18 :On va aller ici,sélectionner le projet.Exprès pour recommencer de zéro.On va l'appelerMentora.Ok.Ok.On va le créer.Donc, on va attendre 30 secondesqu'il va se créer.
00:36:32 :Ok.Normalement, il apparaîtquelque part là.Mentora.Hop.Donc, là, on est dans Mentora.Ensuite,à chaque fois,je m'héberge.Il y a le menu.
00:36:48 :Vous allez ici.Vous avezAPI et servicesidentifiant.Alors, je ne suis pasun grand fande l'API de Google.Je m'héberge souvent.Je ne suis pas le seul, d'ailleurs.
00:37:01 :Hop.Donc, une fois que vous êtes là,en fait, dans l'API et serviceidentifiant,vous demandez plusieurs choses.On va devoir créerl'identifiant.Hop.Donc,il va falloir un ID clientout.
00:37:13 :On va ici.Voilà.Et là,et voilà,il vous demande de créer,configurer l'écran de consentement.Alors, ça, je ne sais plusdans quel ordre c'est.
00:37:24 :Je vais vous montrer quelque chose.Hop là.Quand on est là,l'application,on l'appelle,on va l'appeler Mentora,simplement,parce qu'en fait,Google,avant d'accepter, entre guillemets,donc, on peut le fairepour des tests,pour des petits projets,mais avant d'accepterd'avoir, entre guillemets,des très gros projetsoù les gens peuvent se connecter
00:37:44 :avec Google,eux, ils veulent savoirce que vous collectez,quel projet vous avez.Donc, il faut carrémentleur faire une explicationde notre projet.Et en fait,ils vous donnent un accord,je crois, en trois semainesou voire un mois.
00:37:55 :OK.Mais pour des petits projetsou pour,si c'est jamais pour un projetqui est en interneà votre entrepriseou votre organisation,ils ne vous embêteront pas.
00:38:03 :Vous pouvez le faire.Mais quand ça commenceà être en externeavec beaucoup d'utilisateurs,je crois qu'il faut,voilà.Pour l'instant,il y a une phase de testet en fait,il n'y a que les utilisateursde tests qui pourront le faire.
00:38:14 :Donc, voilà.On fait le suivant.On va mettre...OK.Donc,je vais mettre mon adresse mailet tout.Tac.J'accepte.OK.OK.OK.Donc,c'est bon,c'est bon.
00:38:29 :OK.OK.OK.OK.OK.OK.OK.OK.Donc là,enfin,j'ai,comment dire,j'ai acceptéleur consentementet maintenant,du coup,on va revenir,du coup,on était oùsur...
00:38:50 :OK.APIidentifiant.On s'y est perdudans leur API.Voilà,on est là.Donc,maintenant,ils vont vous demanderquel type d'applicationvous voulez.Donc là,pas très compliqué,application web.
00:39:05 :Non,je vais mettre Montora.Voilà.Ouais.Montora.Et ici,ils vont vous demanderl'URI de redirection autorisée.Alors,je vous montre.Il est là.L'URI de redirection autorisée,ils vous disent,donc,exemple,ainsi de suite,callback,callback.
00:39:29 :Donc,en gros,ici,vu qu'on est en local,c'est celle-là.OK.Donc,le callback.Donc,là,on l'a ajouté.Hop,on l'a créé.Et là,ici,on a toutes les clés.
00:39:46 :Alors,c'est là que,même moi,des fois,j'y perds.Il faut que je fasse attention.On va aller dans...On va aller relancer notre serveur.
00:39:54 :Hop.On va aller dans l'admin.Ouais,mais je me suis inscritavec mon mail commentaire.Ouais,j'aurais pas dû faire ça.Attends,je fais juste un truc rapidement.
00:40:03 :Euh...Je fais un truc rapidement.Hop.Euh...Je ne sais pas ce que je voulais faire.Je vais repartir de zéro.On va faire un create.
00:40:10 :Super.J'ai créé un deuxième utilisateur.Euh...Je vais l'appeler Gab.Ouais,ça me paraît pas mal.g.com.Voilà.OK.OK.Donc,là,on va aller dansl'admin.
00:40:24 :Là,on va aller dansl'admin.Là,on va aller dansl'admin.Là,on va aller dansl'admin.OK.Donc,là,on a Gab qui a été créé.
00:40:37 :Oups,c'est parti.Je relance le serveur.Excusez-moi.Je vais faire des petits allers-retours,là.Euh...On est là.Donc,je relance le serveuret je vais allerdans l'admin.
00:40:49 :Je vais me connecter avec Gab.Hop.OK.Euh...Utilisateur.Euh...Lui,je m'en fiche.On va le supprimer.On va faire comme si c'était un app.
00:40:59 :Voilà.Donc,là,il n'y a plus que moi.Donc,c'est bon.Donc,vous pouvez voir ici que vous avezles applicationssociales.Euh...Donc,on va aller dansapplications sociales.
00:41:13 :Et donc,on ne va pas utiliser un dictionnairecomme on l'a vu tout à l'heure dans l'adminpour créer,en fait,le provider.On va aller ici.
00:41:20 :On peut le gérer,en fait,dynamiquement.Donc,là,vu que j'ai vu que dans les installeadops,tout à l'heure,je l'ai bien dit,je l'ai bien définicomme Google Editeb.
00:41:30 :Eh bien,là,il me propose Google Editeb,tout simplement.Et donc,euh...On va l'appeler Google,tout simplement.Hop.Et ici,il vous faut l'ID client.
00:41:41 :Alors,l'ID client,c'est celui qui,bah,qui s'appelle ID client.C'est génial.Hop.Et il vous faut aussila secret keyqui va êtrecelle-là.
00:41:52 :Hop.Voilà.Et ici,euh...Alors,je n'ai jamais trop touché aux settings.Donc,je vais utiliser,ici,euh...Pour rester basique,on va rester comme ça.
00:42:04 :Hop.Et là,on a bien notre autre Google.Et maintenant,je le croise les doigts.Euh...Si j'ai bien fait le boulot,tac.Et je vais là.
00:42:13 :Donc,il est connecté.Je peux aller utiliserun service-tier,un service-tier,Google.OK.Je vais aller là.Euh...Je vais me mettre même sur mon...
00:42:23 :Je vais me mettre ici,tac.Google.OK.Continuez.Et voilà.Donc,là,je vais aller ici.OK.Donc,comme,comme vous pouvez le voirsur certains sites,ils vous demandent de...
00:42:41 :Donc,vous autorisez ça,ça,ça,et ainsi de suite,tac.Et là,ça me rend vers Profil.Donc,c'est normal qu'il y ait une 404.
00:42:51 :Ne vous inquiétez pas.C'est que si j'avais créé une vue de profil,je serais revenu sur mon profil.Ou si j'avais faitune redirection de login,je serais revenu sur mon profil.
00:42:57 :Donc,hop là.Donc,voilà.Donc,j'ai réussi à me connecter,enfin,à créer un compte avec mon adresse mail Google.Et regardez,comme ça utilise un compte social Google,l'adresse mail,elle est automatiquement vérifiée.
00:43:09 :Si j'ai un compte associé,on voit bien que j'ai un compte Google associé,que je peux retirer.Euh...Tac.Voilà.Hop.Si je reviens ici,avec Gab,Tac.
00:43:19 :OK.On va voir icique dans les comptes sociaux,eh ben,il y a bien un compte social en fait.J'ai deux ID,il y a Gabriel qui s'est inscrit.
00:43:26 :Voilà.Et on voit les donnéesqui sont là.Tac.Et on peut le voir aussi du coup,ici.OK.Donc,on sait qu'il existe Gabriel,et on peut le voir aussi ici,ici,ici.
00:43:38 :OK.Donc,le compte social,il est associé au Google.Et on peut le voir ici,ici.OK.Voilà.Donc,on sait qu'il existe Gabriel,voilà,qui s'inscrit.
00:43:50 :On peut voir que son adresse mail,ici,à Gabriel,elle est déjà vérifiée.Voilà.Et,euh,qu'est-ce que j'allais dire ?OK.Et donc,je disais,dans les comptes sociaux,j'apparais aussi ici.
00:44:03 :Bon.Euh,donc,ça veut dire quesi,si,si,si,c'est gentil,je vois des petits,des petits cœurs,c'est gentil.Donc,si je suis ici,je suis,ouais,je suis en mode,OK,je ne suis pas encore connecté.
00:44:22 :Donc là,avec mon,mon compte docstring,par exemple,hop,bah,ça va être pareil,enfin,je fais le test,mais on l'a déjà fait une fois,hop,tac,je suis revenu là,le profil que je n'ai pas créé,c'est normal,et voilà.
00:44:38 :Et on voit que le,que ça m'a créé,donc,un username par défaut,ce que Gabriel existe déjà,du coup,je vais me déconnecter avec eux,donc,j'ai ordre à 404,ce n'est pas grave,et je vais revenir ici,OK,hum,je réfléchis comment je vais faire la suite,
00:44:52 :OK,allez,c'est parti,hum,qu'est-ce que je fais déjà,attends,je suis où là,je n'y arrive plus,hop,OK,donc,oui,donc là,j'ai déjà installé avec Gabriel,OK,connexion réussie.
00:45:08 :Donc,ce que je voulais vous montrer maintenant,c'est,que,on va aller se rajouter,en fait,un,hum,un deuxième provider,voilà,donc,ici,GitHub,il est où,on pourra faire LinkedIn,on va se faire avec GitHub,OK,donc là,il vous explique,ce qu'il faut faire,donc,ils vont vous dire,
00:45:30 :donc,l'adresse de callback,quand on a vu Google,elle est là,et ils vous disent,rendez-vous ici,OK,hum,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,donc,je suis là,l'application même,on va l'appeler Mortora,hop,hum,ils vous disent,la home page,la home page,
00:45:58 :ça va être du coup,hum,h...Ah,ils ne le mettent pas direct,OK,donc,ça va être,hum,je vais pousser la chaîne de l'écrire,voilà,OK,donc,ça,c'est ma home page,l'application d'inscription,bon,on va tester,la callback URL,elle est,la callback,elle est là,
00:46:20 :tac,et ici,vous la renseignez,hop,et logiquement,OK,elle est créée,donc,maintenant,on va faire comme tout à l'heure,on a,il est déjà activé,OK,je suis où,hum,je fais un peu de ménage,ça,on l'a vu tout à l'heure,c'est bon,OK,je suis connecté avec lui,
00:46:41 :mais je n'ai pas envie,parce que,moi,j'ai envie d'avoir,d'un admin,voilà,avec un super utilisateur,donc,avec Gab,hop,donc,si j'ai ici,hop,je peux l'ajouter,du tab,et,ben,là,on va dérouler,donc,le name,on va l'appeler du tab,normal,hop,lady client,alors,
00:47:07 :il y a,OK,il y a celui-là,c'est ça,donc,c'est un OV23,quelque chose,c'est ça,tac,ensuite,la clé secrète,alors,la clé secrète,il faut la générer,OK,alors,30 secondes,je vais sur mon,sur mon application GitHub,sur mon téléphone,hop,normalement,c'est bon,ouais,
00:47:31 :c'est bon,alors,hum,ensuite,vous avez,du coup,la,hum,une secrète cahier ici,OK,OK,c'est bon,tac,hop,je vais l'ajouter,je vais me déconnecter,et,là,je vais aller me connecter,en fait,avec,hum,hum,avec Gabriel,avec son compte Google,hop,par exemple,il a déjà un compte lui,
00:47:59 :hop,nickel,c'est ce que je voulais,je vais,hum,c'est ce que je voulais,je suis connecté,donc,maintenant,compte associé,donc,vous voyez que j'ai un compte Google associé,bon,le bouton est décalé,c'est parce que j'ai fait un truc un peu à l'arrache,hum,donc,on peut très bien aller dans GitHub,
00:48:17 :maintenant,si j'ai bien fait le boulot,ici,je peux dire,on va aller,on va autoriser Gabriel,tac,hop,et maintenant,on voit bien que j'ai mes comptes associés,GitHub et Google,donc,je peux me connecter avec les deux,et s'ils retournent,du coup,alors,j'aurais pu autoriser,hum,
00:48:35 :cette application-là,avec Gmail,hop,j'ai supprimé,il n'y a plus de GitHub,maintenant,donc,tac,on va faire un petit,j'aurais pu m'ouvrir un,un,un onglet,c'est pas exprès admis,ça aurait été plus simple,j'avoue,hop,si je regarde là,compte sociaux,hop,on a Gabriel,donc,parce que j'ai supprimé son compte Google,
00:48:57 :ça,c'était le,avec l'adresse docstring,mais on voit,ici,il peut se connecter via GitHub,donc,il peut se connecter,en fait,via GitHub,voilà,tac,hum,là,donc,pareil,vous avez ces informations ici,ainsi de suite,tac,hum,qu'est-ce que je voulais vous dire,hum,ouais,je pense qu'on peut faire ça rapidement,
00:49:21 :hum,ouais,on va faire ça rapidement,hum,ok,on va finir par ça,et après,je vous embête,pour le moment,ça va,hum,oui,ok,hum,parce que je parle,je parle,mais en fait,hum,coupez-moi la parole,s'il y a besoin,ok,hop,après,je pense que ce que je vous ai montré,
00:49:47 :là,du coup,il faut être procédurier,mais je pense qu'il n'y a rien de compliqué,vas-y,j'ai vu qu'une procédure,hum,hum,qu'est-ce que je voulais,c'est,ouais,je vais faire un truc,hum,rapidement,ouais,alors,ouais,si,je vais vous montrer,parce que c'est quand même cool,hum,
00:50:08 :je pensais supprimer après,ça,du coup,hum,tac,ok,donc,on a,on va se créer,on va faire,hum,start,start app,je ne sais pas,on va l'appeler fou,je n'ai pas d'idée,ça aurait pu être,je ne sais pas,shop,ou ainsi de suite,une application fou,
00:50:29 :hum,quand tu crées une application Django,si tu veux qu'elle soit reconnue,il faut la,il faut la,la spécifier ici,donc là,je vais spécifier ici,hop,dans le settings,ça,on s'en fiche,et là,dans fou,on va pas se faire un modèle,on va se faire une vue,
00:50:45 :hum,ouais,on va se faire une vue,ouais,on va faire ça avec des,on va l'appeler home,ouais,ça me paraît pas mal,ok,hum,on va l'appeler home,fou,on va faire comme ça,donc ce que je disais,c'est que,donc Anabelle,toi qui ne connais pas,
00:51:03 :ici,dans fou,on peut se faire un dossier,templates,hop,et on va se faire un dossier,fou,hop,ici,ouais,ouais,on va se faire home.html,
00:51:15 :hop,et comme sur une application,il est reconnu automatiquement ce dossier là,donc vu qu'il est reconnu,pour Django,si on veut home.html ici,on va faire fou,slash,home.html,
00:51:24 :hum,voilà,alors,je l'appelle comment ?home,ok,on va se faire ça,il est réaliste,hum,hum,ok,merci,ok,merci,voilà,donc en fait,il m'a tout mis de base,donc c'est cool,hum,qu'on en a à faire maintenant,on va copier ça,un truc de fou quand même,
00:51:46 :hum,ok,donc en fait,il faut savoir qu'avec,hum,j'ai quatre comptes là,celui-là,ok,hum,ça je le supprimerai après du coup,avec django,hum,django,allout,est-ce que je vais tomber ?
00:52:02 :Ouais,c'est ça je crois,ok,il faut savoir qu'en fait,vous avez accès à des,template,tags,mais,c'est pas celui-là que je voulais,en fait,hum,django,allout,hum,social,template,tags,est-ce que je peux les avoir ?
00:52:20 :Non,ouais,voilà,donc en fait,voilà,django,allout,vous permet en fait,d'avoir,hum,en fait,il y a des,template,tags,qui sont tous faits,voilà,vous pouvez les réutiliser,donc là,je vais prendre un exemple,enfin,je pense que je vais vous montrer un peu rapidement,comme quoi vous pouvez récupérer en fait,
00:52:42 :des tags,genre,hum,ici,donc on va,bien spécifier,qu'on veut,hum,utiliser,donc,les loads,le social,par exemple,ici,et donc,on peut utiliser par exemple,un tag,j'en ai copié quelque part,voilà,donc,hum,hop,ah ben voilà,j'ai un truc,normalement,tout fait,pour l'exemple,
00:53:09 :voilà,nickel,hop,donc en fait,hum,par exemple ici,j'utilise le tag,hum,logout,hum,email,hum,login url google,ainsi de suite,hum,j'ai pas fait une connerie,non,c'est bon,je suis où,hop,on va se remettre ici,ok,bon là,c'est moche,parce que j'ai pas,
00:53:35 :c'est juste pour vous montrer sur principe,bon là,des connexions,je ne suis pas connecté,donc ça ne servira à rien,mais vous voyez qu'on peut réutiliser,en fait,facilement,les vues,enfin,refaire des liens vers les vues,juste,en réutilisant des tags qui sont tout prêts,et notamment,
00:53:49 :des tags des providers,donc là,je pourrais très bien les,en mettant,un tag personnalisé,où je veux dans l'application,en fait,voilà,et donc,en fait,vous avez des tags,à peu près pour tout,qui sont déjà disponibles,tout fait,et que vous n'avez pas à réécrire,comme ça,
00:54:05 :vous utilisez les url,qui sont directement comprises,dans Django Allout,hum,voilà,hum,est-ce qu'il y a des questions,est-ce que c'était assez clair,hum,c'est bon,hum,c'est,non,en fait,moi,j'ai bien vu,donc,le truc,je ne savais pas que,c'est le blackmail,en fait,pour recevoir l'email,
00:54:27 :sur le,sur le terminal,ça,c'est vrai,ouais,c'est pratique,c'est pratique,hum,ceux qui veulent en ressource écrite,je vous envoie un lien,j'avais fait un truc,un peu,ça permet de suivre plus cool,c'est écrit,après,leur mentorat sera en diffusion,hum,ouais,hum,du coup,est-ce que vous pensez,
00:54:48 :que ça pourrait vous être utile,un jour,vous trouvez ça utile,ou ça vous paraît,un peu,sur fait,non,c'est utile,alors,non,c'est cool,hum,c'est cool,donc,n'oubliez pas,vous pouvez vraiment,le paramétrer de partout,de toute façon,le mentorat sera en diffusion,hum,sur DarkStream,
00:55:09 :hum,dès demain,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,
00:55:59 :hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum,hum.Hum,hum.Hum,hum.Hum.Hum,hum.Hum.Hum.Hum,hum.
00:56:26 :Hum.Hum.Hum.Hum.Hum,hum.Hum,hum,hum.Hum.Hum.Hum.Hum.Hum.Hum.Hum.Hum.Hum.Hum.Hum.Hum.Hum.Hum.Hum.Hum.Hum.
00:56:53 :Hum,hum,hum.Hum,hum.Hum.Hum.Hum.Hum.Hum,hum.Hum,hum.Hum,hum.Hum.Hum,hum.Hum.Hum,hum.Hum,hum.Hum,hum.Hum,hum.
00:57:20 :Hum,hum.Hum.Hum.Hum,hum,hum.Hum,hum.Hum,hum,hum.Hum,hum,hum,hum,hum.Hum,hum,hum.Hum,hum,hum.Hum,hum,hum.
Aucune occurrence trouvée pour « ».
00:00:00
Présentation de django allauth
00:05:35
Installation et configuration de allauth
00:14:02
Authentification standard
00:26:04
Customiser le template de allauth
00:33:55
Google auth
00:45:22
GitHub auth