Transcription
1. Introduction: Salut les gars, bienvenue à mon nouveau cours. Apprendre est la vitesse dotnet, MVC et Entity Framework base de données. abord, dans ce cours, vous allez apprendre les fondamentaux de ASP.Net, MVC et Entity Framework en construisant un petit bateau pratique School of Management System. Maintenant, ce cours a été conçu avec les débutants à l'esprit si vous êtes tout nouveau dans le développement, nouveau à l'ensemble du concept de ASP.Net, MVC, HTML, jQuery, et tous ces jargons, mots à la mode et ces noms hors technologies, vous les entendez, mais vous n'êtes pas tout à fait sûr de la façon de les utiliser. Ce cours est un cours de départ parfait pour vous. Ici. À la fin de cela, vous allez être en mesure de construire une application Web entièrement pilotée par les données en utilisant une vitesse sur elle MVC. Vous comprendrez le modèle de conception MVC et la structure de dossier. Vous pouvez interroger les bases de données à l'aide des requêtes Entity Framework et LINQ. Et vous comprendrez tout l'écosystème dotnet tel qu'il est. À la fin de ce cours, vous saurez également comment utiliser le contrôle de source sous la forme de GitHub, comment intégrer les contrôles JavaScript et jQuery sur le code dans votre application et développer une interface utilisateur complète et riche pour vos utilisateurs. Au moment où vous auriez terminé ce cours, vous auriez déplacé le leur dans Visual Studio tellement regardé erreurs parce que je ne cache pas les erreurs de mes étudiants. Je leur ai montré des solutions. Donc, au moment où vous avez terminé, vous auriez vu les flèches et vous seriez en mesure déboguer et de savoir comment résoudre vos propres erreurs à l'avenir. Cela vous mettra de l'avant en termes de compétences, vous
permettra d'améliorer votre commercialisabilité et vos revenus et impressionnera tout le monde autour, vous savez, avec tout ce qui dit, je vous verrai dans le cours.
2. Installez une édition communautaire visuelle Studio d'établissement de la communauté: dans cette vidéo examinera l'installation de Visual Studio 2019 Community Edition Pour accéder
au discours, vous pouvez suivre le lien qui est inclus dans les ressources de cette vidéo. Ou vous pouvez simplement Google Visual Studio, qui est gratuit pour les développeurs et waas individuels. Mais si vous allez entreprises, leur application que vous êtes tenus d'acheter une licence. Après avoir cliqué sur ce bouton, nous serons amenés à ce pitch, qui vous remerciera avant de télécharger, et vous devriez voir votre fichier disponible. Après avoir cliqué sur ce fichier, vous devrez effacer l'effraction aux avertissements et exécuter. Cela va ensuite lancer sur l'installateur afin que nous puissions aller de l'avant et continuer sur un bas que la bouteille. Lorsque cela sera terminé, ils nous présenteront quelques options pour les modèles à télécharger. Parce que nous faisons une application basée sur le Web, nous voulons nous assurer que nous avons la vitesse au MIT et quels développements ont
également déclenché . Nous allons donc simplement cliquer sur la case à cocher, qui inclura ensuite toutes ces options. Vous, Nader, allez de l'avant et cliquez dans l'étoile. Lorsque cela est terminé, vous pouvez aller de l'avant et manger et dormir hors de cette complication et un studio visuel bas pour commencer à la fin, il va procéder au lancement studio visuel et fermer l'installateur. Allez-y et connectez-vous si vous avez déjà un compte Microsoft. Si ce n'est pas le cas, alors vous avez compris, ne savez pas. Et peut-être que plus tard, je le vendrai Clark pour ma FEMA. Mais nos équipes peuvent également changer et optimiser. Votre développeur assises chaussures avec le développement sur nous pouvons le
studio musical Sleep Starts . Cela lancera résisté 2019 où ils nous demanderont si nous voulons commencer par cloner ouverture du noyau
existant sur le projet ou la solution. Ouvrir un dossier local sont jolis et les projets que nous pouvons arrêter ici car nous aurions rempli
avec succès les exigences. Avec ce petit, vous restez à l'écoute pour plus.
3. Créer un projet MVC ASP.Net: Biggers à faire serait de commencer notre merveilleux voyage. Voyage passionnant hors Qu'est-ce que la programmation avec SPD a rencontré NBC et dans un travail différent. À la fin de cet exercice, vous devriez être en mesure de construire une application de terme entièrement de données en utilisant le cadre d'entité à la
vitesse de jour sur elle. NBC Comme, précédemment discuté NBC est selon modèle, ce qui signifie qu'il est un orteil de façon standard. Andi a mis votre disque dans une structure et mineur le M signifie modèle, ce qui signifie vraiment la représentation de votre base de données. Dans votre application Web, le V représente les vues ou le côté visuel des choses. Soyez pour la vue V pour visuelle. Votre interface utilisateur, etcetera sur le contrôleur est vraiment juste l'orchestrat en arrière-plan qui dit,
OK, OK, l'utilisateur a demandé cette montre aujourd'hui répondre avec elle a dans une certaine quantité de logique. Bon, donc vous commencez ce voyage en ouvrant un studio visuel, et nous utilisons Visual Studio 2017 Community Edition pour cet exercice. R. Nous allons construire un système de gestion scolaire, alors amenez votre studio visuel. Andi. J' ai déjà créé l'un de ceux supprimés de la liste, et nous allons créer un tout nouveau projet de programmation Web afin que vous puissiez aller au fichier propre, vous cliquez sur le projet ou vous utilisez simplement vos interférences ici. Nouveau projet. Inkley Corn Unity. Puis, sur le côté gauche, je voulais aller au visuel C Sharp et aller sur le Web, sous-catégorie, sous laquelle vous verrez deux options par vitesse. Cette application Web net est celle que vous devez sélectionner, puis nous allons la nommer. Les gestionnaires de l'école veillent à ce que vous ayez un répertoire adéquat à ce sujet. Tu l'as désossé. Teoh, prends le dépôt dont tu as besoin, puis cliquez sur OK pour cet écran. Assurez-vous que NBC est sélectionné sur. Nous voulons changer notre méthode d'authentification pour les utilisateurs individuels Collins. Si tout va bien, tout semble au moins très similitude torches sur mon écran. Ensuite, vous pouvez cliquer. OK, Le processus de création a peut-être pris un certain temps, donc j'ai juste sauté devant le pied quand il est terminé, donc vous pouvez positionner la vidéo. Si vous n'êtes toujours pas à ce stade plus. Une fois arrivé à ce point, vous recevrez cette belle page de destination, ce qui vous permet de le faire. Il a commencé avec la vitesse Annette Ambrose à Connected Zero de Turow et un tas d'autres choses. Jetons un coup d'oeil aux interférences et à ce qu'ils nous ont donné au travail. Si vous êtes utilisé pour gagner des formulaires, alors vous remarquez que vous n'avez pas de boîte à outils, qui aurait été un pilier pour les deux formulaires gagnants et qui ont été exécutés dans NBC. C' est un nouveau paradigme de programmation, donc vous n'avez plus ce style de programmation de décapage d'événements. Donc il n'y a pas de boîte à outils. n'y a pas de contrôles. Le glisser-déposer vous aurez les orteils tenir. Tout en utilisant standard est Jamil techniques sur. Ensuite, nous avons la solution Explorer, qui est généralement où nous allons et trouver tout le père avec lequel nous allons travailler. Et dans cette situation, n'est pas une différence. Nous voyons quelques dossiers supplémentaires et seront utilisés si nous sommes utilisés à nouveau pour le vent et les formulaires Web. Mais ne soyez pas intimidé. Les trois dossiers clés de cet ensemble de fichiers seraient votre modèle. Toi et le contrôleur Fullers,
et puis les autres incendies que nous allons nous mettre en route. Alors s'il vous plaît, allez aussi loin et frappez-moi. Si vous avez des questions, hésitez pas à laisser un commentaire ou une observation dans l'anomalie cette expérience unique et laissez-moi savoir comment vous vous sentez
4. Base de données: donc, pour reprendre là où nous avons arrêté d'avoir créé ou projet de gestion de l'école. La première chose que nous voulons faire est de mettre en place sur la base de données afin que nous puissions
démarrer nos modèles . Ne le faites pas pour mettre en place la base de données dont nous avons besoin pour aller par-dessus le menu sont vue sur. Ensuite, nous cherchons une compétence, un explorateur d'objets serveur. Donc, pour cet exercice sera en utilisant sur la base de données locale. Si SQL Express ou SQL Developer est installé, vous pouvez utiliser cet encens. Mais pour rester simple, j'utilise juste celui qui est intégré avec Visual Studio. Je vais descendre dans mon instance DB locale. Regardez toutes mes bases de données sont assez peu de données. Ceci provient de projets passés, mais nous voulons créer,
et vous devez essentiellement faire un clic droit sur les bases de données et cliquer sur Ajouter une nouvelle base de données et nous pouvons
lui donner un nom. On l'appellera la direction de l'école Sirop a attaqué mes amis Dante a souligné la télé, ou il a éliminé la mine Seimas, au moins pour la cohérence. Vous pouvez le changer, mais pour que nous ayons ah, plus transparente pleine. Conservons simplement la même convention d'attribution de noms, puis cliquez sur OK. Cela crée ensuite ou nouvelle base de données afin que je puisse explorer cette base de données. Comme il sur mes tables, il n'y en aurait pas à part les tables auxiliaires octogénaires, qui pour cet exercice ne sont pas vraiment nécessaires. Donc, nous allons juste faire un clic droit sur les tables et cliquer sur Ajouter une nouvelle table. J' ai inclus les fichiers de script, donc vous pouvez aller de l'avant et copier le fichier de script à partir du J'ai déjà inclus le script car cela générerait notre base de données. Quelqu' un à utiliser un hors du script passé pour le 1er 1 Mais alors je vais créer godes Manu ality J'ai copié le fichier de script à partir de ou plate-forme d'apprentissage. Et puis vous pouvez le rythme dans cette section. C' est son t SQL. Et vous remarquez que ce que chaque démissionne ici est répliqué ici. Et si vous faites un changement en haut, vous répliquez dans le script, sorte qu'ils fonctionnent assez bien dans l'appel d'offres. Une fois que vous êtes satisfait de la table et que votre table ressemble à la mienne, alors vous pouvez aller de l'avant et cliquer sur mise à jour pour mettre à jour la base de données, puis cliquez sur désactivez les restaurants de date. Une fois que cela a été réussi, vous pouvez répéter cette procédure avec toutes les autres tables que cela prescrit. Nous avons donc créé une table d'étudiants. Maintenant, nous créons un cours toujours et je vais le faire en utilisant le concepteur vous. Donc, nous avons une idée bien sûr. Le nom ici est vraiment sans conséquence. Mais vous voulez vous présenter Vous avez un nom de chariots. Tu sais ce que c'est ? Laissez-la sur les crédits de titre sur les crédits serait un entier alors que le titre serait sur le
feu fin Char je viens de mettre cela à 50 et d'autres prêts pour les deux là-bas. Onda Je vais faire ma clé primaire et la colonne d'identité sur leur nombre de façons de le faire pour moi. La façon la plus simple juste autour de l'identité Carmel Très bien, donc si vous n'aviez pas d'erreurs d'orthographe que vous n'auriez pas d'erreurs comme je viens de le faire. Donc, c'est notre script et il va simplement renommer ou table bien sûr, désaccord garde regarder sur le cours, à droite. Et puis une fois que tout va bien, nous aimons juste les mises à jour il y a une fois et j'espère que la clé de ceux-ci était que le succès Nous devrions voir notre table de cours listés là Et puis nous avons une autre table pour laquelle je vais utiliser le script pour aller. C' est une très grande table, donc j'ai juste fait le script, la paix là et puis cela nous donnerait notre table d'inscription avec notre inscription I d qui est notre clé primaire ou grand cours I d. Donc, cette table est ce que vous appelez un ce qui facilite beaucoup, beaucoup, beaucoup à
beaucoup relation entre tous les cours et tous les étudiants qui font ces forces. Cela distrait toutes ces associations sur. En outre, ils ont convenu qu'ils obtiendraient donc une fois que vous êtes satisfait de cela, vous faites comme, un peu Ayant créé avec succès les trois tables, vous n'êtes pas prêt pour l'étape suivante. Mais bien sûr, il peut simplement vérifier en allant dans notre suite Object Explorer et en s'assurant que les trois tables y sont exposées. Vous pouvez afficher les données en cliquant avec le bouton droit de la souris sur la table spécifique, puis en cliquant sur les données hors cours. Nous n'avons pas encore entré de données dans quoi que ce soit, Donc tout est vide. Merci de vous accorder et voir la photo suivante
5. Ajouter le modèle de données du cadre d'entité: Hé les gars. Nous continuerons donc de nous asseoir sur la base de données avec la mise en place ou le modèle de données dans nos projets afin que nos restaurants plausibles d'application Web soient juste comme un rappel. Avoir des contrôleurs, nous avons des modèles et nous utilisons. Donc, les modèles sont la base de données qui disent, les fichiers mimiques qui ressemblent à la structure de base de données sur. Ils nous aident à communiquer avec la base de données via le cadre d'entité. Donc, si nous regardons dans ce dossier qui voit qu'il y a quelques modèles parce que nous avons réellement créé ou projeté en utilisant l'option d'authentification individuelle a cônes Si vous ne l'avez pas fait
,
c' est bien. , Mais ce que nous sommes sur le point de faire est d'ajouter un diagramme de structure d'entité à notre projet. Donc, nous avons juste un clic droit sur ce modèles d'eau, nous ajoutons, Vous allez orteil nouvel article, puis nous cherchons la sous-catégorie. Ce sont ses données là-bas. Nous sélectionnons notre modèle de données d'entité réseau radio. Nous pouvons lui donner un nom qui est suggestif de ce que nous faisons pour que nous puissions dire que l'école gère amis. J' aime appeler ma base de données après avoir fait cette semaine. Lorsque nous obtenons cet assistant, nous voulons le laisser sur le concepteur de base de données parce que nous faisons notre première
approche de base de données . Donc, nous laissons celui-ci sélectionné ensuite, puis nous serons invités à connecter orteil. Instance où notre base de données a été créée sur vous, rappelez-vous ? Il l'a créé sur notre école locale BB, ce qui signifie que je dois aller orteil puis mettre dans le serveur. dans ce cas, amende est locale e d et S s q l il maintenant vous pouvez mettre cette goutte connue. Si vous avez plus d'une instance, cela augmenterait probablement le peu de temps, selon la maison, tous les sens que vous avez et si vous êtes sur le réseau est de tout chercher, donc cela prendra vraiment un certain temps. Donc, si vous le savez par cœur, c'est plus facile à cela. Tapez-le sur puis une fois que vous faites cela, sélectionnez l'authentification dans ce cas sont l'authentification est dans cette authentification sur. Ensuite, nous sélectionnons nos données. Ils sont attachés à cela et plus tard, c'est la télé de la direction de l'école. Ensuite, nous cliquons sur OK et il verra que la chaîne de connexion je juste un peu sur, def. Nous examinons l'historique du contexte. Vous voyez que c'est vraiment juste l'anglais quand vous obtenez tous ces caractères et symboles de la façon est vraiment juste l'anglais. C' est une chaîne chronique de Stan égale et la source de données est sur le serveur que nous venons
de commencer . D' accord. Notre catalogue initial est la base de données que nous avons sélectionnée et puis vous avez d'autres choses interroger la sécurité. Vrai, plusieurs résultats actifs. C' est vrai alors que le moteur derrière il est notre cadre d'entité. Donc, une fois que nous sommes satisfaits de cet écran, vous pouvez le district suivant. Ensuite, il nous demandera quels objets de nos données. Ce serait comme inclure dans notre projet maintenant Jusqu'à présent ? Eh bien, ils ont créé trois tables pensant que ce clic cette case sont si vous avez tous les objets qu'ils ne veulent
probablement pas inclure. Tu veux probablement creuser et dormir là. Un par un, c'était fini. Alors cela cherchera un moment. Le Seigneur art. Donc, une fois que cela est terminé, vous serez dirigé vers l'écran qui ressemble à l'inscription au cours secret et aux étudiants, ou tout tableau que vous avez créé dans cette aiguille est que vous avez spécifié que vous obtiendrez ces données dans le diagramme. Donc, si nous avons percé dans les fichiers qui sont associés à nos banques e G ou data model diagram. Nous verrons ici que nous avons en fait quelques dossiers de la Cour C pointus avec les mêmes besoins qui correspondent ici. D' accord. Et si vous deviez les ouvrir et jeter un oeil, vous ne le faites pas est qu'ils vraiment juste des fichiers de classe avec les garçons hors attributs Andi
regardant cordon aléatoire qui a été généré. Mais alors, si vous faites attention aux propriétés, vous remarquez que ces propriétés sont au cours de la représentation des champs pour moi à partir de la date de son ne sont pas dire une société pauvre comme nous avons créé vous avez le titre comme nous avons créé et puis les crédits, et nous avons fait des crédits bien informés dans la base de données. Donc, nous avons un type de propriété entier bien informé ici. D' accord. Et puis vous voyez qu'il y a aussi sur inclure la liste des liés à Rome. C' est certainement Weber clé étrangère des inscriptions au cours. Donc le cadre d'entité génère le fait que d'accord, dans une relation de clé étrangère que je suis avec l'inclure une liste des inscriptions que cette force, n'importe quel cours particulier serait impliqué. Très bien, donc le cadre d'entité rend beaucoup plus facile les relations de gestion sur vos associations au niveau de la base de données. Mais plus important encore, ce CD, un diagramme de mélange, crée ce pont entre ou application Internet ou application Web sur notre date de ces , sorte que vous allez sur l'ajout du modèle de données deux ans projets.
6. Visite de la structure des fichiers et comment ajouter des vues: si vous savez ce que nous avons laissé dans la dernière vidéo que nous avons créée ou dans les modèles de données et dans l'institut où nous chercherons à ajouter les points de vue des contrôleurs pour faire une visite générale des fichiers qui nous aident à travers notre programmation web. Non, Microsoft Gate était un bon nombre de fichiers et de dossiers générés. Ils nous donnent un beau plein de structure. C' est quelque chose comme un squelette ou un système de guidage, si vous voulez. Il n'est pas difficile et rapide que votre projet regarde le plus, laissez cela parce que pendant que vous allez le long, vous ajoutez les choses bougeaient. Donc vous êtes pour la structure moi très de cette balle à la fin du bébé. Une fois que vous créez sur des projets D C, c'est le plein général. La structure que vous obtenez maintenant je vais passer par les dossiers. Vous pouvez faire un petit tour sur pleinement apprécier exactement ce que nous avons. Donc, un débutant, vous avez quelques dossiers judiciaires. Ceux-ci sont essentiels pour le début réel de notre application là-bas. Certains pré-processeurs, vous savez, définissent une configuration protéique de trucs d'identité, des paquets pour nos stars et nos scripts. Je ne vais pas entrer dans les détails de ceux-ci, mais nous pouvons juste avoir une idée de ce qui est un upstart. Si nous regardons le contenu, nous voyons que nous avons quelques fichiers CSS hors de la boîte, et V C five est livré avec bootstrap, peu intégré et intégré. Ainsi, votre application Web a l'aspect bootstrap par défaut. Vous pouvez effectivement le supprimer si vous le souhaitez. Vous pouvez l'apprécier si vous le souhaitez. Tu peux faire n'importe quoi une fois qu'il sera là. Ils vous donnent également un autre fichier CSS standard, qui est le vôtre à modifier à volonté. Cette pratique vous permettrait de créer un autre fichier CSS et de remplacer les étoiles et le bootstrap
par opposition à éditer le fichier chef. C' est pourquoi ils vous auraient donné un autre où vous ajouteriez vos propres
styles personnalisés et les autres le me bootstrap, plus personnalisé et plus personnalisé dans le supporter des contrôleurs, nous avons trois contrôleurs sur nous pouvons utiliser à partir de la convention de dénomination que le nom du contrôleur serait un mot dans ce cas, adversaire sur le contrôle de mot. Oh, et si vous avez tous les trois rapides, vous avez remarqué qu'ils vont voir ça pendant des mois. Un mot dans ce cas la maison sur le contrôle de mot gérer le contrôleur sauveur créerait un nouveau contrôleur. Vous devriez avoir tout ce que vous suivez en terminant par le contrôleur de mots. Frais internes Très bien, fonds. Celles-ci sont générées. Ceux-là viennent avec bootstrap avec nous. Lancez Internet. Tous les ordinateurs ne sont pas à l'aide de fonds que vous souhaitez afficher. Donc, il est toujours bon, au moins dans le développement Web moderne d'inclure le fichier de fonds avec vos projets de sorte que le serveur seigne les fonds contrairement à la machine plane. C' est pour ça que c'est là. Mais je vous conseille de ne pas le
manger . Honnêtement. Jamais donner que nous sommes passés par des modèles sur, nous avons vu où nous avons ou des fichiers de classe différents et nous avons ajouté ou porte de ces entités modèle . Donc nous avons un magasin de pont jours de ça. Nous avons un dossier Scripts, qui s'il vous plaît poster un tas de scripts, principalement des scripts de requête J qui sont nécessaires pour compléter ou bootstrap scripts. Nous avons également la réponse de la modernisation, qui a aidé avec la réactivité et la compatibilité descendante pour plus. Hmm. Si je farce pour les anciens navigateurs, donc d'autres ces maisons de choses préemballées avec le mot projet, vous n'avez pas à ajouter ces choses manuellement. Très bien, donc ici nous avons ou dossier de vues, qui s'il vous plaît héberger orteil sur réserver vos fichiers avec l'extension que C s. h. Savez-vous ? Je suppose qu'il semble. Voir, aiguiser HTM de combiné. C' est exactement ce que les réserves ? Non. Je voulais apprécier la corrélation entre les noms de dossiers ici dans les vues sur les noms des poussettes de fonds. Donc, nous allons regarder la manette Onda, appréciez ça. Corrélation. Nous avons donc un contrôleur domestique, qui est un fichier CS. Onda, un fichier CS est juste un fichier de classe. Comme vous le voyez, c'est vraiment juste une classe qui fait mal à partir d'une classe de base appelée Controller. Sur celui-ci,
il a des fonctions, des méthodes, des
procédures, procédures, quel que soit le mot clé que vous avez utilisé, les identifier. Il a ceux-là. Ils retournent tous certains types de résultats d'action sur la valeur de retour pour inaction. Le résultat est la vue, Vous savez, ce que cela fait est d'établir que Pour chaque méthode que vous avez ici, vous devriez avoir un fichier de vue correspondant sur. C' est ce que cela revient. Donc, lorsque vous expéditeur quête d'index du contrôleur de la maison, il était la recherche à travers le titulaire de la vue sur ils cherchent un plein de la
maison de nom correspondant sur cela. Il cherchera le contrôleur avec une vue pour la vue avec le plaisir correspondant, fils, vous index sur, puis il le retournera. Donc, cela signifie que si vous avez une méthode ici et que vous n'avez pas de fichier
correspondant dans un dossier correspondant que vous obtenez quelque chose comme une ère 404, nous allons entrer dans cela et explorer tout cela dans quelques minutes. Donc, je jette juste un coup d'oeil à l'index très rapidement. Notre fichier d'index. Je voulais apprécier qu'il a des choses purement html en dehors de cette section, qui est précédée par ceci au signe. Une fois que vous voyez un extérieur, cela signifie
que vous êtes sur le point de superposition C tranchant jusqu'à votre HTML. Bon, alors rappelez-vous est un fichier HTML CSS. Donc, il suit environ un peu sur c forte sur il est de le fusionner avec html sur je fais juste un exemple
rapide de mettre, voir, aiguiser ceci. D' autres protégés si la déclaration ainsi au signe. Si un entre cet exemple juste juste pour vous montrer toute la raison fonctionne qui me
permet réellement de créer hors Désolé. Eh bien, puisque cela me permet de superposer c forte vieux ici dans ma région. Donc, c'est la pertinence de ma vision ou de réserve que vous déposez. Une autre chose à noter, c'est que nous n'avons pas ce squelette traditionnel. Je l'appelle un squelette où chaque numéro, Beatrice temps avec notre type de doc sur notre tête et ou tags body. On n'a pas ça ici. Aucun de ces fichiers que vous avez. C' est parce qu'ils héritent tous de ce que nous appelons un fichier de mise en page. On va voir la lime à ongles dans quelques uns. Mais ce que je veux vraiment que vous voyez et appréciez est le fait que chaque fichier ici le nom correspond au nom de la méthode. C' est ça le contrôleur. Très bien,
Donc, une fois que vous avez un nom de méthode une fois de plus, vous devez avoir un fichier correspondant dans un dossier qui a un nom correspondant au contrôleur. Alors laissez-nous juste faire une visite. Andi a finalement appuyé à cinq heures. Le moment qui évolue, en attendant Donc, nous allons grandir. Cela a peut-être pris un certain temps. Mais une fois que vous êtes ici, nous voulons jeter un oeil à tous les Visual studio et sp .net NBC nous aident jusqu'à créer une porte
entièrement fonctionnelle et des sites Web allemands. Non, c'est notre discours d'index. Règle Cardinal pour moi, quand il est une sorte de conception, est que toutes les pages devraient être appelées index une fois qu'il est la maison prévue faite, droit comment ou page d'index. Si vous regardez cela et nous regardons froid, vous voyez la corrélation entre ce qui est ici comme contenu sur ce qui était sur la page
verra également que nous avons un peu bootstrapped apparemment terrain où l'utilisation des
boutons d'amour bootstrap , même les fonds viennent de bêtises. Tout est intégré aux loups. Non, je veux que Justo apprécie aussi que cela se charge de bas Post. Il ne se charge pas à partir de vos jeux de fichiers locaux comme il le serait si vous construisiez une page
HTML normale . Visual Studio est en fait en train de déclencher une session. Je suis un certain pour les services d'information Internet. Donc, c'est 100 de nombreuses fibres et hors que je l'utilise pour émuler une expérience de serveur Web. Quand tu seras à peu près plus, c'
est quand tu as appuyé sur 5. Maintenant, si nous avons les trois cônes de frère, nous voyons que c'est notre maison hebdomadaire. Un bateau. Nous voyons ce lien changer. Donc non, nous avons des hôtes locaux sur votre numéro de port peuvent différer du mien. On voit la maison. Je vois nos bateaux. Non, rappelez-vous ou contrôlez tout était espoir donc Quel que soit le nom de la manette, c'est ce qui apparaîtra. Et cela sera suivi du nom hors de la vue que nous avons demandé. Donc, en fait, contact. Vous voyez un contact barre oblique de changement d'accueil similaire. D' accord. Et je retournerai à la maison. Il va charger l'index de toute façon, donc il n'a pas besoin d'indiquer quoi que ce soit d'autre. Nous allons retourner en studio visuel et faire quelques changements. Non, retour en studio visuel comprend. Sortez du mauvais conseil. Non, on va aux pieds. Ajouter une nouvelle vue. Donc, je vais juste me mettre aux pieds, faire deux pas. Stone on, Droit public. Vous savez, notre type de retour était les résultats de l'action. Et puis je verrai des tests. Vous espériez qu'elle soit des bretelles d'oiseaux, alors nous savons que nous devons retourner la vue car c'est la valeur. Au moins, c'est nos méthodes. Des trucs s'attendent. Non. Si je cours en mode débogage une fois de plus sur, puis tente de grandir à cette vue, vous devriez obtenir une flèche car il n'y a pas de fichier correspondant dans ce dossier. Donc, nous allons juste exécuter cette expérience et reconstruire sur. Allez-y en conséquence. Je sais que nous avons notre fouet. Nous pouvons suivre la convention de chemin de couture à laquelle nous sommes habitués afin que vous puissiez juste voir une barre oblique car c'est le contrôleur sur lequel nous venons d'ajouter cette vue aussi. Ensuite, je vais écrire dans le nom de la nouvelle vue ajoutée, qui est la vue de test appuyez sur Entrée, puis ont été accueillis avec cette page très peu attrayante. Mais alors, si nous prenons le temps ou d'apprécier ce qu'il voit, c'est nous faire savoir que la vue sous ce nom n'a pas été téléphonée en dehors des endroits qui ont été fouillés. Donc, nous voyons qu'il a regardé dans les vues Boulder. Il a regardé dans le dossier d'accueil correspondant sur qu'ils n'ont pas trouvé de fichier qui aurait pu
éventuellement passer, comme vous l'avez fait. Très bien, donc c'est ce genre de flèche que nous aurions eu pas moi. Les ajustements cardiaques sont à la hauteur de nos projets. Maintenant, de retour en studio visuel, nous avons encore un peu de travail à faire pour obtenir cette vue sur et qui coule. Nous avons déjà créé la méthode ici. Ce qu'on veut faire, c'est obtenir le dossier ici. Vous pouvez faire un clic droit sur six impairs tous les deux sur. Alors donnez. C' est le nom que tu sais qu'on veut. Donc ce serait vous tester. Et puis nous voyons un tas d'autres options ici. Nous n'avons pas besoin de porter sur la classe de modèle de modèle pour l'instant. On ne veut pas prendre ça, mais tu vois quelque chose à propos de Leo Page. J' ai mentionné vos pages tout à l'heure, mais nous ne l'avons toujours pas fait pour regarder la hauteur de l'étiquette. Mais je laisserai ça vide pour pas de Dieu. Et puis ça passe par ce truc appelé sangle Holding. Je sais que nous avons notre nouvelle vue sur. C' est une page assez simple. Comme nous l'avons dit, c'est presque une page html d'os de bière qui est capable d'avoir quelqu'un gémit ou c texte pointu dedans. Vous obtenez le titre ici dans cette variable, donc il génère également tout cela sur eux juste en arrivant. Pieds remorqueur. C' est son monde Hello. Andi. Je vais lui donner une de ces classes de bootstrap célèbres verre et c'est le lash de texte en quatre. Donc, nous devrions nous fixer bleu quand nous avons loué était qu'il peut contrôler, déplacer et être ou construire et cliquer sur la solution construire sur les travaux Juste assurez-vous que nous n'avons pas erreurs de
syntaxe dans notre conseil. Nous voyons aussi que c'est notre fichier vous est créé ici. Donc, si vous retournez dans le bateau amarré sur, alors nous grandissons pour vous tester,
Ensuite, nous devrions être accueillis avec une page avec un H pour parler avec ce texte généré ainsi le texte que nous venons d'ajouter. D' accord, non, que nous avons fait les ajustements. Revenez d'abord sur cette page pour moi. Ceux-ci vous avez pressé cinq de studio visuel qu'il ne serait jamais aller orteil au discours que nous voyons ici que nous avons plus h remorquage impression ceci et notre Bonjour salle à la recherche du monde parce que nous avons mis sur la classe bootstrap pour le texte afin que nous puissions simplement aller les gens Makoto plus et savoir que nous savons hota ajouter plus de vues. Donc, nos projets une fois de plus vous allez au contrôleur sur. Nous nous assurons qu'il y a un stub de méthode qui a un nom correspondant avec la vue que nous voulons obtenir. D' accord ? Non, j'ai mentionné la page Leo plus d'une fois sur Dime No. On vous donne une visite rapide de ce qu'il y a dans le petit morceau. Essentiellement, la page voile est un générique réutilisable. Tim plaide pour vos pêches. Vous pouvez avoir plus d'une charge sur le boîtier pour avoir plus d'une. Offres serait comme Si vous avez un système qui a un côté client face et un
portail d'administration , alors vous savez que vous êtes Porter ressemble probablement différemment du client, fusionnant un de sorte que vous pouvez avoir un peu pour le côté administrateur et jeter bas pour un frais client à l'intérieur sur. Ensuite, cela réduirait le besoin de faire les choses répétitives encore et encore et encore. C' est juste hors de sens pour les scripts Odinga sur faire l'échelle HTML. C' est à chaque fois, accord, donc c'est pour ça que vous avez une telle échelle. Ne pas version de votre fichier ici. Mais alors, dans le dossier partagé sous les vues, vous avez un peu vieux Nazi H d vous savez, fichier sur. Vous allez là-dedans et vous n'êtes pas bombardé avec un tas de HTML. Mais si vous prenez du recul et que vous passez par là pour voir qu'il est régulé, docteur, c'est HTML où nous nous dirigeons. remorqueurs à l'intérieur qui étaient des déclarations métalliques, ou charset et à des fins de conception Web réactive, sont des bootstrap requis à la version que vous voyez ici où le titre est défini dynamiquement. Si nous nous souvenons de surfer au-dessus de l'authenticité, nous voyons que nous avons dit View emballé. Intitulé la vue de test dans le fichier de mise en page. Il change avec chaque page. C' est un rendu personnalisé sur, puis la partie statique de celui-ci, qui est mon application SB dotnet. Puisque nous faisons un système de gestion scolaire, je vais changer ça en système de gestion scolaire. Très bien, sur, alors, certaines des déclarations ici ces fonctions sont des fonctions nettes C. Donc, nous voyons ici sont à
signe, ce qui signifie que nous superposons un certain c tranchant alors Styles est une classe statique qui appelle une fonction appelée rendu, qui passe ensuite dans certains mater antérieurs, qui, si vous regardez l'Asiatique de qui est généré à partir de cela, vous voyez le cordon réel reliant tous nos fichiers de notre dossier de contenu. D' accord, je n'entrerai pas dans ça. Droit ? Non, plus tard, nous explorerons ça plus en détail. Je veux juste que tu apprécies ce que tu regardes. Ensuite, nous rendons certains des scripts. Dans ce cas, nous rendons vraiment juste moderniser, parce que ce testicule je dirige tout le reste. Mais en dessous, c'est là que nous rendons les autres scripts, tels que J Query et Bootstrap Andi assis quelques paramètres. Non. Si on fait défiler sur Regardez-le. Nous voyons le corps que nous voyons ici. Nous ajoutons assez de barre sangle façon style. Voyez ici que nous avons un lien d'action. Donc, nous avons sur l'objet sur HTML et a une fonction appelée, en fait qui prend quelques fichiers, quelques valeurs comme paramètres. Très bien, donc ici, je vais juste changer le nom de l'application parce que je suis sûr que nous nous souvenons de notre âge, vous voyez, l'application proche de sortir à chaque fois sur chaque page. Et qui voudrait dire le nom de l'application voudrait en fait lui donner le nom qu'il devrait être. Donc c'était le système de gestion de l'école, et puis on a assez de bar à la maison pour les contacts qui ? Regardez ici. Nous voyons qu'avec ceci est notre barre assez sur. Nous avons chacun de ces liens à la maison un boulon. Je suis contact. Non, nous venons de créer une vue de test. Vous aimeriez qu'il soit dans la barre des numéros que nous pouvons aussi lui aussi. Donc je vais juste contrôler De sur qui double la ligne, et ensuite on peut juste modifier ce sergent, voir vous tester d'accord ? Donc, le premier bloc de texte parle orteil ce qu'il est. Sur quoi voulez-vous imprimer ? Assez de feu. Le deuxième bloc parle du mai réel. Je pensais qu'il devrait chercher Alors rappelez-vous dans le contrôleur que nous voulons rechercher la
méthode par la vue de test de nom. Remarqué qu'il n'y a pas de place ici parce qu'on ne met pas d'espace dans nos noms médicaux. Mais nous devons le dire tel qu'il est ici, il n'est pas sensible à la casse. Si vous voulez utiliser la recherche est ici ou utiliser. Regardez est ici ou vous continuez avec l'affaire. Nous serons tous la même chose et participerons avec celui-ci parce que nous ne voulons pas empreintes d'
orteils, la vue de test du boîtier chameau à nos utilisateurs. Donc nous prince ce que nous voulons ainsi ou l'utiliser ici, puis le contrôleur est à la maison. Donc ce dernier Permata parle contrôle. Donc, si vous regardez attentivement la maison, vous verrez que nous imprimons à la maison. Vous savez assez de feu ici Cependant, il est lié à la méthode d'index à l'intérieur de notre contrôleur maison. Donc, il est lié à notre méthode d'index dans notre contrôleur de maison, qui recherche ensuite les recherches pour la vue tous les index etan rend que, cependant, disaient à l'utilisateur qu'il est à la maison tout droit. Et puis comme nous descendons dans nos vies, nous voyons ici dans notre contenu de corps si cela rendait corps alors rendu corps parle vraiment orteil le rendu réel sur le CS Ishan de vous fichier à l'intérieur de cette mise en page entière, qui explique pourquoi tous les ils sont rendus avec suffisamment d'acheteur et avec un filtre. Nous avons vu notre pied de page avait nos opérés signer l'année Andi quelques prises aléatoires qui auraient été générées mon SB fait si l'application. Donc, puisque nous modifions toutes ces apparences hors de ma vitesse sur son application, nous voulons nous assurer que tous disent les systèmes de gestion scolaire. J' adore ça. C' est sur le déplacement ici. Et puis je peux contrôler, changer et être et construire sur. Assurez-vous que je n'ai aucune erreur de syntaxe sur. Ensuite, nous pouvons revenir dans le débogage plus sur DSI, tous ou changements appuyez sur cinq pour interviewer. Donc, lorsque notre page se charge, nous voyons ici que tous nos changements reflètent. Nous avons le système de gestion de l'école imprimé ici au lieu du nom de l'application. Nous avons notre vue de test. Non, je ne l'ai pas fait. Ou assez de barre sur nous avons ou pied de page réfléchissant ou l'âge. Donc, si nous voulons commencer à changer de contenu, vous savez, tout ne voudrait pas avoir un système de surveillance scolaire avec ESPN dot net imprimé . Tout droit là. Nous voulons modifier le contenu et ainsi de suite. Et nous devons aller dans notre point de vue. Faz Pino le contenu et commencer à mettre dans l'ensemble de notre contenu personnalisé pour chaque page. D' accord, donc j'espère que vous apprécierez les vues entières et que les contrôleurs travaillent en attente. Ils sont tous liés au pH Leo dans son ensemble. Vous pouvez effectivement aller sur un bateau en ajoutant plus de contenu et de fonctionnalités à votre site Web. À nouveau la prochaine fois
7. Scaffolding: : Ajouter un contrôleur et des vues: non dans ce studio ou nous allons regarder des échafaudages sur la génération de contrôleurs et de vues pour la fonctionnalité dans nos sites Web. Jusqu' à présent, nous avons regardé ce qui est le contrôleur, qui est une vue. Tenez un lien. Allez-vous créer une nouvelle vue ? Onda touchant un contrôleur Ce que nous n'avons pas fait était de lier le modèle à tout. Donc nous avons regardé la mer. Nous avons regardé le V. Nous avons regardé le M. Nous les avons regardés dans la peur, isolement et non, nous allons vraiment les lier tous ensemble. Donc, dans ce pour visiter, nous regardons une procédure ou un processus en studio visuel sur la plupart des frameworks NBC que vous utilisez appelé échafaudage, où nous associons le modèle avec un contrôleur et générons la vue en conséquence. Non, j'ai ici à l'écran mon cadre d'entité Bagram sur ce que nous allons faire pour commencer est créer un contrôle de cours. Oh, Andi, quelques vues associées aux fonctionnalités corneilles. Quatre cours en bref, C est pour créer notre est pour lire. Vous êtes pour l'opiacé. Andi est supprimé. Donc, les opérations actuelles gèrent essentiellement, sont régies tout ce qu'un utilisateur ferait jamais sur un site Web qui est le médecin. Donc, sans plus tarder, nous allons créer un contrôleur de cours, lier à notre modèle de cours pour générer un tas de vues qui sont perdues, interagissent avec ou des cours dans nos bases de données. Donc, pour commencer cette procédure, nous passons à notre dossier de contrôleurs. Nous avons droit, cliquez et cliquez, ajoutez. Ensuite, nous sélectionnons le contrôleur. Ensuite, on nous donne ce genre de fenêtre d'assistant où ils nous demandent, quel genre de contrôleur voudriez-vous ? Vous voyez, ici vous avez M v c 5 que vous avez avec le FBI avec un tas d'autres choses. Ce que nous voulons vraiment de celui-ci, c'est le contrôleur NBC cinq avec des vues utilisant le
cadre d'entité très spécifique. Donc, nous sélectionnons celui-ci sur une semaine comme ça. Puis ils nous ont demandé, quelle serait la classe modèle ? Donc, à partir de cette liste déroulante, nous verrons tous les fichiers CS qui sont dans notre projet listés ici. Mais nous ne sommes pas intéressés par chaque fichier CS. Nous recherchons spécifiquement celui avec le nom qui correspond à notre mission. Donc, dans cette situation, nous voulons le cours qui se trouve dans notre dossier de modèles sur. Rappelez-vous, si nous perçons dans les médias, nous verrions le fichier CS. Je vais le faire rapidement et vous donner un peu de contexte. Donc, nous avons foré dans des modèles. Nous avons notre travail différent. Bagram. On creuse ça et on ne le fait pas ici. Vous voyez que vous avez bien sûr que CS et c'est un modèle que nous voulons utiliser le génère ce contrôleur donc une fois de plus, nous contrôleurs directement. Nous allons sur le contrôleur de clic publicitaire. Nous sélectionnons NBC cinq contrôleur avec des vues en utilisant le cadre d'entité et cliquez sur Ajouter Ensuite, nous
sélectionnons à partir de ce cours de boîte déroulante sur la classe de contexte de données serait notre école Montréal entités DP. Bon, donc on peut choisir d'utiliser un contrôleur de chant. Les actions sont précédentes cette fois et je l'utilise la prochaine fois sur. Ensuite, ils nous demandent quelle page de mise en page aimerions nous utiliser pour nos vues ? Donc, nous voyons ici, nous avons une case à cocher est générer des vues. On a une case à cocher. C' est ses bibliothèques de scripts de référence, ce que nous n'avons vraiment pas besoin de faire puisque notre page Leyla a déjà les références. Donc, nous allons simplement sélectionner ou petite page en cliquant sur le bouton représentant des points de suspension. Il y avait des vues partagées, puis nous sélectionnons nos mises en page. Encore une fois, vous pouvez avoir plusieurs. Ils aussi vous choisissez peu qui est approprié pour cette situation sur Puis à la fin de son il y aurait demander l'activation de contrôle que vous pouvez voir en suivant la même
convention de nommage . Il est également généré en utilisant le nom du modèle qui est bien sûr qu'ils disent des cours sur le contrôleur de mot. Donc la convention de dénomination, je veux dire les adolescents, puis on clique sur ajouter, il passera par un exercice d'échafaudage. À la fin de cet exercice, vous recevez un fichier de classe et vous voyez beaucoup plus de noyau que nous sommes habitués à partir de ou
contrôleur domestique . D' accord. Non, une fois de plus ou contrôleur est juste une classe avec le nom hors du modèle dans cette situation dans le monde Controller sur son héritage d'une classe de base appelée contrôleur. Ensuite, ils procèdent à l'initialisation de nos objets de contexte de données qui nous permettent de communiquer avec notre base de données. Rappelez-vous, continuez à dire que ce diagramme est notre pont. Quoi ? Ce pont est impliqué dans cette seule ligne ici à la ligne 15. Donc, nous initialisons cet objet à une nouvelle instance de notre diagramme d'entités, qui établit la connexion à notre base de données. Ensuite, si nous regardons à travers, nous verrons que nous avons beaucoup de méthodes qui ont été générées, et certaines ont commencé à donner des conseils sur ce qui se passe ici. Donc le 1er 1 est Index. Rappelez-vous, comme toujours, index, Le premier fichier qui devrait jamais être dans n'importe quel site Web sur celui-ci renvoie une vue. Mais alors, dans cette situation, nous voyons que nous avons des paramètres dans ce point de vue. Très bien, donc vous voyez que vous avez B B, qui est le même nom était notre contexte de base de données sur. Nous exécutons une requête sur la table des cours, et nous analysons simplement tous ces orteils plus loin. N' avez-vous pas un discours détaillé qui prend probablement un entier. Très bien, donc cette question pourrait vraiment signifier que ça pourrait être non, ça pourrait être,
ah, ah, la valeur. Il se prépare à ce que ce soit un non je dévaluer qui arrive dessus comme un contrôle superficiel pour dire, si le I d qui est passé n'est pas que retourner un mauvais noyau de requête tout droit, sinon il ira sur la source orteil ce cours par I d. Donc, c'est ses cours db dot not find retourneront n'importe quel enregistrement avec ce que j'ai d et le stocker dans une variable appelée cours. Et puis il continuera à dire si le cours qui est retourné ne signifie rien ne
revient à la fin de cette requête qu'il dit encore, Http pas téléphone. Donc, vous voyez un bon nombre de retours ici et aucun hors d'eux notre point de vue. Très bien, donc des résultats réels. Mais alors les résultats d'action sont faibles. Zito ont des valeurs différentes renvoyées. Tant que vous avez la bonne valeur sont une valeur acceptable. Ensuite, vous avez une voiture pour le temps de retour afin que nous puissions retourner sur http Status code résultat pour Butters
sur les demandes que nous pouvons retourner. Http. Pas appelé ou nous pouvons retourner voir avec notre cours source. Droit. Nous avons donc cherché le cours à ce moment-là. Une fois que rien n'est pas sur tout vérifie. Ensuite, nous retournons la vue avec nos données de cours. Nous avons aussi ah créer mes pensées stub sur. Nous continuons à voir qu'il ya pour créer des arrêts de méthode Nous avons un pour obtenir qui juste les retours de vous, puis un pour la publication, qui vient avec quelques caractéristiques de sécurité et une certaine liaison. Et au fur et à mesure que nous
continuons, nous les explorerons davantage. Et celui-là. Assurez-vous que les données qui reviennent sont valides avant qu'elles ne s'arrêtent sur nos
bases de données ou bien sûr sont stables dans notre base de données, puis enregistrez les modifications sur, puis redirigez vers l'index. Si l'état est invité, il revient à la vue avec le cours, avec quelques messages d'erreur indiquant ce qui manque ou regarder a été invité de la même manière
que nous devons créer. Nous devons éditer. Donc, avez un montage ici, ce qui est que je reçois. Et nous avons un montage ici, qui est un cours que les bases de cordon sont assez similaires sur. Ensuite, nous avons une construction similaire est pour nos suppressions et ensuite nous avons une fonction d'élimination. Donc, tout cela a été généré juste par vous, en ajoutant un contrôleur avait dans la classe générant les vues sur vous. Prends tout ça. Donc, la clé de ce que je viens de dire était de générer des vues. Nous avons les méthodes, nous devons
donc nous assurer que nous avons les points de vue qui correspondent à ces méthodes. Dans un dossier correspondant pour ce contrôleur que je vais à mon explorateur de solutions. Je vois ici, le contrôleur a été ajouté contrôleur de cours, mais alors j'ai besoin de valider les vues. Et si nous descendons à des vues, nous voyons ici les cours que le nom sur cette effondrement cela les noms correspondent cours, cours
contrôleur, dossier. Et vous voyez que pour chaque méthode qui est ici dans le contrôleur, vous avez un fichier correspondant. Donc, si nous cliquons sur Index verra pas mal de choses qui se passent ici qui n'était pas présent sur le pot d'index
précédent. Donc, nous avons ici sur l'inclusion d'un modèle, accord, sur le type souple I innombrable. Donc C sharp a un certain nombre de types de données. Si vous faites ça depuis un moment, je suis sûr que ce ne serait pas très étranger pour vous. Mais vous avez ceci inclus, car en toute justice, le fichier d'index reçoit une liste. Droit. Alors rappelez-vous, par ici, nous passons une liste dans l'index des cours db dot à la liste. Donc, il obtient un type de collection. D' accord ? Il obtient une liste de cours. La page d'index doit afficher tous les cours. Je suis désolé. C' est faux. Fichier d'index. Tous les cours qui auraient été dans la base de données, comme au moment des congés. Vous chargez ce discours ? D' accord. Et il y a pas mal de choses qui se passent ici. Vous avez ce bouton créer un lien réel pour crée sur parce que l'index et le créateur dans le même contrôleur, vous n'avez pas à enregistrer explicitement le contrôle afin qu'il puisse mettre sur vous pourriez mettre sur le contrôle dans les cours d'anglais. Vous pouvez rediriger orteil un autre contrôleur hors cours. Ça se sentirait parce qu'il n'y a pas de création à l'intérieur de la manette, non ? Mais alors, en raison du fait qu'ils sont dans le même contrôleur, vous n'avez pas besoin d'être aussi explicite en passant d'index à créer. Donc ça marche. Ensuite, nous allons créer une table. Nous devons propriétés pour nos cours stables qui ne comprennent pas l'idée. Donc, nous avons eu i d ont été resserrés où les crédits Nous n'avons pas besoin d'afficher le i. D sur d. M. V. C sait que vous n'avez pas besoin d'afficher l'i d. Donc, quand ils ont généré cette page qui s'est assuré de juste exclure ce qu'ils pensent que vous ne
voudriez pas afficher à l'utilisateur final Quoi qu'il en soit, nous avons
donc un nom d'affichage pour le titre sur un pour les crédits et tous ces deux
sont mis dans la section d'en-tête off ou table sur. Ensuite, nous les voyons injecter du C froid vif ici où ils disent pour chacun. D' accord, donc ils disent que pour chaque élément du modèle, c'est ici ou les données qui reviennent. Ainsi, une fois que vous avez passé les données dans la vue, vous pouvez les référencer en voyant le modèle. C' est un mot clé juste là. Donc, toutes les données, juste en survolant l'info-bulle, indiquent que cela fait référence à la collection hors cours provient de la base de données. Encore une fois,
bien sûr, cet index de contrôleur quittait notre base de données, en
regardant dans notre table de cours sur les obtenir tous et en les analysant pour lister en passant cela dans la vue. La vue peut identifier toutes les données entrant par le mot clé appelé model. Comme il s'agit d'une collection, nous avons besoin de la liste des orteils tout dans cette collection de bandes dessinées. Donc, nous disons que pour chaque élément du modèle ou de l'ensemble de données revenant, nous voulons notre règle. Donc, pour chaque élément veulent générer une règle et cette règle devrait avoir une colonne pour le titre sur une colonne pour ou crédits, puis 1/3 colonne avec nos boutons d'action, ce qui dirait éditer les détails et supprimer qui chacun écrira dans le sous notre contrôle. Oh, je veux me rappeler que dans notre contrôleur de cours, nous avions des modifications. Je trouve rapidement où les modifications que nous avions crée. Nous devrons, mais nous avons créé sur nous avons des détails sur. Nous avons aussi des suppressions. Non, on doit pouvoir aller sur cette page ou n'importe qui sur quatre pages. Donc, je vais aller à notre page de mise en page et m'assurer que notre Lion a un lien qui peut
nous amener à cette page d'index. Donc, je vais supprimer ou précédemment créé affichage de test. Comme nous n'avons pas besoin d'aller de l'avant, je vais simplement taper ceci manuellement. En outre, je crée un nouveau maintenant de propriété ou assez de lien assis un lien d'action. Donc, au signe HTM l lien d'action point et puis je passe en tant que paramètres. Ce que je veux être imprimé. Je sais ce que je veux être imprimé. Ce serait des cours. Comment des cours désespérés sur. Ensuite, nous regardons à l'intérieur de l'index. Désolé, nous recherchons la méthode d'index à l'intérieur de nos cours. Contrôleur. Bon, alors rappelez-vous que c'est ce qui est affiché l'action ou la vue que nous voulons Onda, le contrôleur, que nous devrions être en mesure de le trouver maintenant. Après avoir fait tout ça, nous allons frapper un cinq et voir ce qui se passe maintenant. C' est le résultat de notre payé jusqu'à présent. Et nous voyons ici que nous avons un lien appelé cours. Lorsque nous cliquons que nous devrions être guidés vers notre page d'index sur. Lorsque cette page se charge, nous voyons qu'elle est vide. On a quelque chose dans notre base de données, non ? Mais alors nous voyons que c'est cohérent avec ce que nous avons vu dans la vue que nous avons index,
ce qui, je crois, est dans un chacun à parler. Nous avons un lien qui est son créer nouveau,
qui, qui, quand nous cliquons, il devrait nous conduire orteil sont créer forme. Et puis nous avons les deux titres pour nos équipes. Mais nous n'avons pas de règles et de colonnes par la suite parce que nous n'avons pas de données. Rappelez-vous, il génère chaque règle pour ce qui est à la date de ceci. Si la base de données est vide
, aucune règle ne sera générée qui, pour chaque boucle, ne sera pas exécutée. Alors, allons faire du bateau. Créer quelque chose de nouveau afin de créer vous nous amène à notre vue de création qui nous demande un titre sur les crédits. Donc, vous voyez la création que vous êtes en train de générer automatiquement. Et j'ai juste frappé à Visual Studio pendant que nous sommes toujours en mode débogage. Et jetez un oeil à la créatrice Vous. Nous voyons qu'il a généré un formulaire. Très bien, donc il y a une fonction d'aide HTML appelée form begin, qui rend une ferme en HTML alors, en utilisant du code bootstrap, nous obtenons un formulaire ici qu'il y a un résumé de validation avec une classe attaché à elle sur . Il y a un certain motif ici que comme vous voyez le froid de plus en plus, vous attrapez sur le motif. Donc, je ne vais pas délibérément entrer dans les détails de certaines choses parce que je veux que vous voyez
et appréciez le modèle au fur et à mesure que vous allez. Ces certaines choses apparaîtront de plus en plus sur le chemin Jamais vivre en ce jour si nous avons une étiquette afin que vous voyez un autre problème, ma fonction d'aide étant utilisée et nous regardons le modèle sur nous créons un droit pour un titre en lui donnant des classes bootstrap. Désolé. D' accord, , alors,
ne le fais pas. Ici, nous générons un éditeur pour Donc, il y a une aide de fonction qui est son éditeur pour à
peu près la détresse est que je regarderais le type de données pour lequel je suis censé créer un contrôle et créer un contrôle approprié. Donc, si nous avions un booléen pour notre humain, voir que nous devions créer quelque chose pour l'éditeur générerait automatiquement cette cocher. Donc, il y a des situations où vous voulez utiliser l'éditeur pour plus de facilité là-bas, moments où vous devez être explicite afin que vous puissiez voir le point html prend la boîte pour All right, donc vous pouvez être explicite là-dessus. Certaines fois, vous voulez être très explicite car l'éditeur pour a quelques limitations. Les manuels pour vient avec plus de manuels de fonctions liées qui sont prêts à aller quelques choses autrement. Donc, nous voulons une zone de texte pour notre modèle, et nous avons un peu, um, l'expression ici pour dire modèle ce titre, puis nous ajoutons des attributs de problème. Si vous vous souvenez de HTML, quand vous avez une nation dira que vous pouvez ajouter dans des attributs tels une classe zaydi, S'il vous plaît souder quand il s'agit de zones de texte. Nous ajoutons donc de nouveaux attributs Ishijima. Et rappelez-vous, c'est tout C pointu, donc nous devons le traiter un peu différemment de tout ce que nous aurions dans ST chaque démo. Donc, nous ajoutons des attributs supplémentaires étaient en ajoutant une fois de plus une autre collection attributs
hors attributs. Maintenant, si vous utilisez des manuels pour que certains hors, la cour ici devra également changer afin que vous ne puissiez pas voir les nouveaux attributs asiatiques de
cette manière . Vous devez réfréner un peu votre cour, donc pour ne pas compliquer la situation car nous attendons juste notre appétit, je le laisse sur le rédacteur en chef. Ensuite, nous nous déplacons le long de sorte que nous voyons l'éditeur pour génère ou boîte de texte, et il attribue une classe bootstrap appelée formulaire Bash Control à elle. Nous avons également une autre section pour le message de validation, qui signifie que si nous avons stipulé au niveau de la base de données que ce champ n'est pas crédule, alors le message de validation saura qu'une fois que nous essayons de soumettre une valeur nulle ou un lorsque nous cliquons sur soumettre sur notre ferme, il le rejettera comme nous l'avons vu dans notre logique de contrôleur, où il vérifie est évalué, donc si ce n'est pas valide, alors il le rejettera et retournera la vue avec n'importe quel corps venu Retour sur. Le message de validation s'afficherait en conséquence. Donc, il le fait ,
Ah, beaucoup de poids lourd pour nous à l'époque. Je ne le sais pas. Tout ce que nous avons sont Submit Button, qui obtient juste une classe bootstrap par défaut,
quelqu'un pour changer le succès des orteils. Donc, après l'avoir changé pour enregistrer simplement les changements étaient toujours en mode de débogage sur Nous
revenons juste à notre écran et rafraîchir Onda bas. C' est pour recharger ou page avec nos modifications. On y va. Non, allons créer un nouveau cours. Donc, j'appelle celui-ci en production à la conception Web. Bien sûr, allez. Mes dépenses à l'époque, comme je disais avec l'édition car il sait que les crédits sont censés être un entier, donc il nous donne réellement une zone de texte. Je suis en train de taper du texte en ce moment. Il ne l'accepte pas parce que le contrôle qu'il génère pour lui est un sélecteur de nombres lui-même. Type numéro P clarifier, inspecter l'élément. Je suis sûr que je verrai le type d'entrées être nombre. On y va. Cela me limite donc à ce que je suis capable d'entrer. Donc généralement introduction à ce que le design est un cours de trois crédits que je pourrais juste créer. Et on y va. Donc, nous retournons à notre page d'index. Bon, Andi sait, nous voyons que nous avons une règle générée avec deux colonnes, une pour le titre, une pour les crédits sur puis une autre colonne, qui avait nos boutons d'action pour éditer les détails Onda supprimer, et chacun m'amènera à la page correspondante en fonction du type. Donc, si je clique sur Modifier et que je vais réellement apporter Visual Studio cette fois et mettre un point de
rupture sur notre action d'édition, d' accord, donc chaque méthode ici est appelée une action, donc le point de rupture est assis là étaient toujours en mode débogage sur. Ensuite, je vais cliquer sur Modifier, puis nous prenons le temps de disséquer ce qui se passe dans Visual Studio. Donc, le point de rupture est touché. Alors si je survole l'idée, je vois que je veux. Et c'est parce que notre nouveau disque créé dans notre table de cours a une idée hors d'un. Et puis si nous traversons notre cordon, nous voyons que si je d est égal interne, cette valeur est de deux chutes, donc il saute par cela sur. Ensuite, il continue à exécuter cette requête, qui dit alors de trouver le cours avec le I D. Donc, si je passe par cela, il exécute cette requête et il passera par des choses sur, alors il devrait retourner cours. Donc, si je survole bien sûr, je vois et qu'il revient avec un tas de valeurs générées. Mais je peux creuser et voir les détails exacts ici. Nous verrons que nous avons ou crédits étant trois et ou titre étant introduction toe Web design sur. Comme je le disais plus tôt, une fois qu'il y a une publication sur l'entité City, Framework apportera automatiquement toutes les valeurs sont l'ID associé. Donc, puisque nous n'avons pas d'inscriptions directement liées à ce cours particulier que la liste des inscriptions est nulle, elle est vide. Donc, si j'appuie sur f 5, ça va continuer. Teoh évaluer Si le cours n'est pas pas une terre, nous savons qu'il ne sait pas parce qu'il vient de voir qu'il a une valeur, donc les valeurs ne savent pas, donc il retournera la vue avec les données correspondantes que nous venons de rechercher, et c'est tout ce que nous avons engagé dans la procédure de quelque chose où il est dit alors : Apportez ce formulaire. Donc, nous voyons qu'il ressemble très similaire à nos créations, sauf qu'il est livré préchargé avec toutes les données parce que nous avons cherché le cours, obtenu les données associées au cours sur, puis transmis à cette vue. Non, si je fais un changement ici, l'attente est que le cours serait mis à jour lorsqu'il est répertorié dans l'index. Donc, je vais changer cela parce que nous avons élargi nos programmes pour savoir que nous avons introduction à la conception Web partie un sur, alors nous aurons une partie à. Je peux également éditer cette vue parce que je veux enregistrer le bouton pour ressembler au vert, quelqu'un pour revenir ici. Donc, je vais faire quelques changements ici sur ce point de vue. Quoi qu'il en soit, je veux que le même bouton soit vert, peu comme sur notre page de création, donc je vais revenir ici. Nous sommes toujours en mode débogage. Nous allons dans la solution Explorer. Trouver cette vue afin que nous regardons dans le dossier des cours. Nous recherchons la vue d'édition sur, nous verrons qu'il ressemble très à notre page de création d'index sur. Ensuite, nous allons modifier notre bouton de soumission pour avoir Bt et Dash succès une fois de plus. Donc, au fur et à mesure que
vous allez, vous obtenez un autre tribunal généré, ce qui est vraiment juste une ligne directrice. Mais vous serez invité et influencé le donner ici ou le flair individuel sur le changement. Certains éléments, comme vous le voyez, correspondent si je retourne ici pour me rafraîchir et que vous voyez enseigner le point de rupture à nouveau, je ne veux pas que ce soit que les artistes enlèvent les points de frein qui est imprévisible sur. Je vais juste cliquer. Continuer Andi Là, nous voyons que nos pêches rechargées sur. Nous avons notre bouton de sauvegarde vert hors cours sont les changements ont été activés. Don est parti de moi. Cette modification à nouveau, puis je clique sur Enregistrer sur. On y va. Donc, le changement a été fait sur nous savons avoir la conception de travail orteil d'introduction a gagné le même nombre de crédits sur Si je regarde les détails, l'option de détails est de faire une chose très simple. C' est trouver. Quel cours a le i d. Associez-le ici bien sûr, ce n'est pas visible, Mais si nous parvenons sur le bouton, nous verrons dans le coin inférieur gauche que le lien est affiché donc il va cours barre oblique détails barre oblique un. Donc, cette barre oblique est ce paramètre qui est passé dans notre option dans les mentors par. Très bien, donc si je regarde les détails pour être précis, nous verrons trouver des détails,
nous verrons les détails des résultats de l'action. C' est une perm. Ça s'appellera Idee. Donc, quel que soit le i d. est, il est né de ce lien ici et qu'un tel quand il est cliqué, il va être Pasto l'action de détails dans le paramètre i d sur. Ensuite, il est évalué, en s'assurant que nous ne perdons pas de temps parce qu'une base de données appelée pense qu'il est cher . Vous voulez donc vous assurer que vous testez vos données autant que possible avant qu'une base de données appelée soit requise. Donc, ici, nous nous assurons juste que si rien ne s'est passé, alors ne vous embêtez pas à perdre le temps d'essayer de chercher quelque chose qui sera invalide. Donc, nous vérifions que nous validons que cette idée de me valoriser bien, il peut exister à ce stade. On ne sait pas encore. Ensuite, nous essayons de le trouver sur. Ensuite, nous vérifions si nous l'avons trouvé. Si on ne le faisait pas, on a dit de ne pas téléphoner, ce qui est comme un quatre ou quatre. Si nous l'avons fait, alors nous disons S'il vous plaît retourner la vue avec les données associées au cours. Alors essayons ça. Et puis nous voyons ici, ce sont nos détails. Vous très simple page sur. Tout ce qu'il fait est d'afficher le titre sur les crédits. Donc c'est des détails. C' est une page de vue. C' est à des fins de visualisation. Ce n'est pas pour l'édition ou la création, Donc ce serait plus comme notre dans la foule. Ceci est votre page de lecture, et nous pouvons choisir de revenir à la liste, qui va juste écrire une étincelle au même endroit ce Woodrow Justo ou nous pouvons choisir d'aller avant et éditer, ce qui serait le vous la mise à jour sur alors On n'obéit plus à ça. On peut juste revenir à la liste. Et puis à partir d'ici, nous pouvons également supprimer. Donc, si je clique, les leads seront conduit orteil. Quelque chose d'une page de confirmation, qui a fait une chose similaire à la Bt est qu'il a cherché le cours et il a apporté le cours que j'ai sprint les détails et puis il demande, Êtes-vous sûr de vouloir supprimer cela sur, puis, juste pour ajouter à l'esthétique de la page, je vais juste aller et trouver cette vue de suppression sur. Alors on peut regarder à travers. Nous pouvons changer le verbiage comme nous le souhaitons, nous pouvons dire, OK, supprimer. Êtes-vous sûr de vouloir supprimer ceci ? On peut mettre ça en alerte pour lui donner un cours, et je le donne en alerte. Danger. Très bien, donc c'est une alerte de classe bootstrap. Danger. Bootstrap a une excellente documentation. Je vais partager ça avec vous. Donc tu peux si tu n'es pas si ça Oh, la peur. Avec les classes bootstrap et ce qu'elles font, vous pouvez toujours aller au bootstrap, obtenir le résultat bootstrapped. Et ils ont une excellente optimisation. Où l'éclatement de toutes leurs classes, Andi, leurs fonctions pour vous. J' ai donc fait ce changement. Puis je me suis rafraîchi pour voir mes changements. D' accord, ce n'est pas le meilleur. Je pense que j'utilise la classe à tort, mais vous pouvez voir où les classes bootstrap m'aidant à juste ajouter un peu d'individualité à la page, par
opposition à ce qui a été généré automatiquement pour moi sur qui veulent probablement que le bouton soit lu. Donc j'ai trouvé que ce bouton est un bouton. C' est un bouton de soumission. Onda a changé ça pour BT Indust Danger. Je crois pour celui-là. Je dois mettre des alertes plutôt que des alertes. Alors faites-le simplement Enregistrer et actualiser. On y va. Donc, ça a l'air beaucoup mieux. Nous voyons que les alertes lui donnent un peu plus de mettre sur un autre dangereux quoi ? Rouge immédiat. Bon, donc beaucoup de ces classes bootstrap que vous devez utiliser dans les piles, mais prenez votre temps et regardez à travers les exemples sur, alors notre bouton est également lu, donc je supprime C'est juste un spectacle sur lequel notre cour travaille. Ce que je vais faire, c'est aussi mettre un point de rupture dans nos cours. Donc, nous avons déjà chargé sont obtenir des suppressions parce que nous avons les données, droit,
Donc, nous avons les données à des fins d'affichage. C' est ce que ça fait. Non, quand je clique sur Soumettre Comme pour n'importe quelle autre page, il doit faire quelque chose. Donc, comme je l'ai mentionné précédemment, chacun a un get sur opposé il que je me mets sur. Ensuite, il s'est opposé. Donc, vous obtenez est ce qui se passe quand vous frangez à la page d'édition. Mais une fois que vous cliquez, soumettre Le post est ce qui se passe donc nous allons voir dans notre suppression posé ce qui se passe ? Non, le but est fixé, Ben. Je vais aller de l'avant et cliquez sur Supprimer sur. Puis il frappe le point de frein. Donc ici, il provoque. On voit. Cette idée en est une. Il ne va pas orteil. Trouvez le cours, puis visualisez Studio 2017. Je nous aimais de faire ce truc à l'école où on vient de sauter directement notre ligne. Donc je vais sauter cette ligne, accord ? Ça veut dire que la carrière était exploitée. Donc, si nous regardons à l'intérieur hors de notre parcours, l'objet verra qu'il a obtenu le cours. C' est l' air,
les crédits, les crédits, et c'est le titre sur. Ensuite, il va voir supprimer de la table. Quelles que soient les données contenues dans cet objet. D' accord, alors. Une fois que cette suppression se produit, nous devons voir si des changements sont apportés. Je vais juste appuyer sur F 5 à la fin. Tout cela, il ne va pas rediriger vers notre option d'index, donc vous verrez que c'est aussi un grand modèle qui se produit dans chaque action. Dans l'action d'édition, nous voyons où il est ceux d'une opération. Il valide les données qui ont un bean putting depuis l'édition est valide, alors il fait quelque chose où il touche le fait que cette entité a été modifiée et il semble les changements. C' est un bon moyen
rapide de le faire dessus. Ensuite, nous revenons à l'index si nous regardons nos créateurs de créer le rendu de la vue. Mais alors il s'est opposé à l'endroit où il est en train de valider puis d'ajouter, d'enregistrer le changement, puis de rediriger vers l'index. C' est à peu près la grippe de toute opération grossière. Vous contextuellement droit effet cordon orteil. Peu importe ce qui a changé à la base de données, vous savez, vous êtes probablement en train de créer du contenu, donc vous devez faire haut articulo. Nous pouvons être votre édition Clinton vous devez trouver C'est ce que c'est que vous êtes quelque chose et puis vous faire savoir qu'il a été modifié et puis enregistrer les modifications. Et puis, dans ce cas, nous supprimons. Donc, nous devons obtenir le fichier ou l'enregistrement plutôt qui étaient en train de supprimer, puis voir si les changements et ensuite nous retournons toujours à la maison à la liste. La liste est ce qui nous montre que les changements ont été faits, donc je vais juste prendre le Président cinq et sauter de l'avant alors là, nous sommes redirigés. Index sur. Nous avons une liste vide. Non, vous pouvez le faire avec n'importe quelle autre table de données que vous avez dans votre base de données. La même procédure que vous venez de faire pour les cours est obtenue pour les étudiants. Et il peut être un peu différent pour les inscriptions, mais je veux aller de l'avant et de le faire pour les étudiants et de créer l'étudiant à partir opérations en utilisant les méthodes et les techniques que vous venez d'apprendre dans cette vidéo, vous êtes libre de laissez vos commentaires et laissez-moi savoir si vous avez des difficultés. Je serai plus qu'heureux de vous aider, Dennis encore en avoir un bon.
8. Gestion des modifications de base de données: vous les gars. La dernière fois qu'on s'est arrêté, nous avons créé le contrôle de nos cours sur l'utilisation des éraflures dans tous les commentaires de Jerry. Je vous ai laissé avec le défi d'aller de l'avant et de créer le même contrôleur et les mêmes vues. Ou est-ce que les étudiants présentent quelqu'un pour le faire rapidement, juste au cas où vous ne saviez probablement pas quoi faire en fait, comment c'est tout simplement. Donc, nous avons droit, cliquez ou exécutez pour une annonce Goto stable, une épaule sélectionner M V C cinq contrôleur avec des vues en utilisant un travail de cadre STI. Ensuite, nous sélectionnons notre classe de modèle. Dans ce cas, ce serait des étudiants. Ensuite, nous voyons que la plupart des informations sont déjà renseignées parce que c'est ce que nous avons fait la dernière fois. Donc, studio visuel garde une trace de nos activités. Inspire-moi et plus facile. D' abord, passons le long. Cette fois, j'utiliserai un contrôleur de chant. Actions est de vous montrer la légère différence dans la cour. Tout le reste est vérifié, donc j'ai juste une semaine à la fin, hors de l'exercice d'échafaudage sur Nouveau contrôle est généré pour les étudiants, et nous voyons qu'il ressemble très à ce que nous sommes habitués à partir de cours. Contrôleur. En outre, si nous regardons dans notre tableau de vues pour voir que nous avons un nouveau dossier pour les étudiants avec le même ensemble d'utilisation de nos prisons dans les chevaux. Maintenant, si vous regardez de plus près votre contrôle, vous voyez que vous avez quelques nouveaux mots de syntaxe, à savoir un chant sur un blé. Ce sont des pièces hors du support, mais générées à partir de quand nous avons dit utiliser une fonction de chant sur assez beaucoup d'assouplissement sorte de avec notre beurre
froid. Et c'est beaucoup de nos méthodes à exécuter. Il est synchronicité. Cela correspond donc au besoin d'efficacité et aux multiples menaces continues à exécuter dans une seule application. En dehors de cela, vous voyez que la plupart de la cour ressemble à peu près à la même chose si nous la comparons avec nos cours . Trou du contrôleur. Maintenant, dans cette vidéo, nous voulons nous concentrer particulièrement tôt sur faire des modifications ou bases de données Semaine permettra. Nous utilisons d'abord une base de données, modèle de
citation, ce qui signifie que notre base de données aurait existé alors nous construisons une application autour de ses bases de données ou nos bases de données impliquant constamment que nous chair old et étouffons le conscient soit pour ou application. Maintenant, le défi avec cette approche est que lorsque nous changeons notre base de données, nous devons mettre à jour nos modèles sur également opiacés ou mettre no. Je viens de générer cette attente toutes nos vues et ce contrôleur basé sur les champs qui étaient présents dans plus de huit de ces tables. Donc, si je regarde dans les données vis, je vais voir que j'ai trois champs anxiété acier, nom de famille, prénom et taux d'inscription, qui signifie que tout ce qui aurait été généré aurait été généré autour ces particules se sentent. Donc, si je regarde ma vue de contrôle, je verrai que j'ai un formulaire généré pour le nom, le
prénom et les actes d'inscription. Et si j'avais besoin de mettre les étudiants ? Middling. J' ai laissé ça hors de la base de données ? Non, j'ai besoin de l'inclure dans ce que j'ai sur quelqu'un pour accéder aux vues dans mon explorateur d'
objets SQL Server . Je ne suis vraiment pas dans mon instance de base de données sur défini par la base de données, la gestion de
l'école, table
TV et apporter une modification à ma table d'étudiant. Donc, je à juste titre, puis cliquez sur le concepteur. Je vais ensuite procéder à l'ajout de la colonne du deuxième nom à cette table. Donc je viens juste ici dans le deuxième prénom que je voulais être un shar 50 en partie comme les autres noms et les actes nitriques pour commettre ce changement. Une fois que ce sera, c'est fait. Je sais que Toe a besoin, bien que mon modèle de base de données soit conscient du fait qu'il y a une nouvelle colonne dans cette table ou dans cette classe particulière. Donc, si j'apporte mon E DMX, je vais voir que les étudiants actuels n'ont pas de problème de deuxième nom. Donc, je fais un clic droit dans l'espace vide sur mon modèle Click Up Deeds de Data Bees Thistle. Alors donne-moi un petit sorcier. Je peux aller à actualiser les tables de clic sur, puis cliquez sur Terminer À la fin de ce processus, nous voyons que nous avons le deuxième nom ajouté ici en tant que colonne. Maintenant que me laisse orteil doivent mettre à jour tous les deux vues ordinaires orteil savoir qu'il ya un deuxième nom qui doit être quelque chose ou ajouté dans notre création qui est le changement de contrôle
et B et assurez-vous que tout facture avec succès après une construction réussie. Ensuite, je vais aller de l'avant sur défini mes points de vue qui doivent être édités afin godowns par ces titulaires chercher des étudiants et puis d'abord il est notre créatif vous. Donc, j'ai besoin de répliquer à peu près la structure que j'ai ici. Mauvais nom de famille et prénom sur le système de la forme Italie. Considérant qu'ils sont tous des oiseaux similaires soit les types et les constructions, je peux juste copier et coller ce bloc de Cool Onda modifié afin que nous sachions que vous voulez milieu Donc, cela génère une étiquette pour le prénom. . J' ai juste changé cela trop peu et vous pouvez voir que l'intelligence est en train de ramasser qu' il ya en effet et en fait, une colonne dans le modèle a causé peu que j'ai dit, juste entrer sur puis je vais faire ceci ou aller sur aussi l'allégation, Mme. Je vais également avoir besoin de le faire pour ma page d'édition comme dans cette copie Cette fois au cours de cette
page d'édition semble très similaire à ou créer Page et je voudrais juste créer un peu d'espace ici sur est le même trou sur une fois de plus notre modèle sur notre page Ses étudiants sur dso il sait hors de la nouvelle cause de
propriété faite sur étape supplémentaire afin que nous puissions franger's à cette
page d'index nouvellement créé est de modifier notre Leal's sur coronavirus ajouté. Artistique sur les cours pour D naturel pour entendre cette ligne ? Et puis je dirai aux étudiants. En outre, nous allons changer le nom du contrôleur pour les étudiants. Nous pouvons le dire et ensuite aller de l'avant et les gens, une fois que notre fenêtre sera lancée, vous verrez que nous avons la longueur de l'orteil payé par nos étudiants, afin que nous puissions cliquer dessus et être navigués vers notre liste des étudiants. Nous savons que nous n'avons rien ajouté à la base de données. Et vous voyez aussi que même si nous avons ajouté le deuxième nom pour le modèle, il n'y a pas de colonne de deuxième nom à la place d'ici. Nous avons, cependant modifié, créé. Donc nous avons le deuxième prénom ici, Alec Tree est sur. Si je vais de l'avant et crée sur, alors regardez faire des notes que la date d'inscription je nous réduit le type dans notre texte libre. Donc, si vous vous souvenez, je disais qu'il y a certaines situations où vous voudrez peut-être ajouter des contrôles personnalisés. Toe notre zone de texte sur Jour 84 a quelques limitations, donc il voulait probablement changé le type de données associé à cette entrée à partir du texte sur l'ensemble. C' est quelques fois donc nous pouvons au moins obtenir le sélecteur de temps ou trouver un souci de geek ou
des scripts Java coupés dans le contrôle à mettre ici. Nous pouvons faire que les actions majeures pied pour Non, je vais juste mettre une porte générique et puis cliquer crée. Maintenant, si on jette un coup d'oeil à ça, tu vois ça ou presque la période. Ce rapport est ici une fois de plus sur l'index n'affichaient pas le deuxième nom. Cependant, si nous cliquons sur les modifications, nous verrons que nous avons une légère anomalie avec notre programme, nous n'avons pas fait assez pour nous assurer que le deuxième nom allait être rempli lors de la création. Par conséquent, , nous avons ajouté la zone de texte au formulaire d'édition. n'y a pas un petit nouvel affichage parce qu'il n'y avait pas le deuxième prénom commis à la date de ceci lorsque nous avons cliqué sur trois s. Donc, nous avons encore un peu de travail à faire. Maintenant, revenant à notre cour, vous pouvez sortir du mal plus une seconde et voir quel travail supplémentaire doit être fait pour que notre fonction de création fonctionne. Si nous regardons les données, nous allons également voir directement pour la table, Je pense que vous données sur. Nous voyons que le deuxième prénom était en effet et en fait envoyer à travers comme un bas. C' est parce qu'au moment de la création, même si nous avons mis les manuels et les contrôles là ou le deuxième prénom, nous n'avons pas dit au contrôleur qu'il devrait effectivement et en fait, pour un deuxième prénom quand il reçoit plus tard de notre vue. Donc, si nous regardons notre contrôleur très rapidement sur nous allons à la création potion de cours verra que nous avons quelque chose ici qui dit trouver inclure sur nous avons quelques paramètres. Est-ce que les étudiants Lords I d nom de famille prénom dates d'inscription sur le deuxième nom DNO. Maintenant, ce qui se passe dans cette inclusion égale suivie par cette chaîne hors champs provenant de notre modèle étudiant est que nous recherchons des propriétés spécifiques de cette classe qui devraient être incluses lorsque nous sommes à la maison pile ou des objets sur pour voir si les changements Donc ils trouvez -moi la modification que
nous devrions prendre un siège entièrement. Nom de famille, prénom inscription sur le dessus sur le milieu Lui sur cette partie est sensible à la casse Zoff, s'il vous plaît assurez-vous de briller de la même manière que la propriété apparaît dans la classe Andi pour
les modifications. Nous pouvons également aller de l'avant et inclure peu est venu sur aller en mode débogage et assister à ajouter d' autres étudiants. Alors nous ne devrions plus avoir ce problème. Alors, allons une strate. Aucun modem en effet avec des tentatives d'en ajouter un autre. Ensuite, je clique sur crée et puis nous avons un deuxième dossier étudiant. Maintenant, si je regarde la fin, c'est alors vous verrez notre valeur revenir,
contrairement à notre 1ère 1 où il n'y avait aucune valeur engagée dans la base de données. Maintenant, si nous regardons l'âge des détails pour voir tout ce que nous devons dire sur les étudiants, les détails devraient vraiment et vraiment énumérer toutes les choses sur les étudiants ici. Notes. Il n'y a pas de Moyen-Orient, donc nous avons encore un peu de travail à faire pour que le deuxième prénom apparaisse dans notre âge. Donc, je viens juste de passer rapidement en revue les détails et nous sommes toujours en mode débogage. Retrouvez la vue des détails sur. Nous pouvons voir ici que la page de détails ressemble un peu différemment des autres pages. Il utilise principalement la fonction d'aide HTML pour afficher le nom d'affichage quatre et affichage pour Donc nous pouvons juste huit. Ce Andi répliqué ce genre de logique sur les inserts milieu. Donc je viens de mettre un petit nom sur le deuxième prénom voir sur puis rafraîchir notre paix sur. On y va. Nom de famille prénom sur nos nouveaux ajouts du deuxième prénom de famille. En outre, nous avons des besoins d'inscription. Ce sont des choses que vous pouvez faire est techniquement de rendre RD Il est plus attrayant maintenant, peut-être moyen plus facile d'avoir pris en charge tous ces changements à notre base de données sur notre contrôleur
suivant et voir froid aurait été orteil régénère ou contrôleur et basées sur les changements apportés à notre modèle. Le danger à cela, cependant, est que tous les changements que vous auriez comblés dans rejetés sur remplacé par le
tribunal generi . Soyez donc très prudent lorsque vous allez apporter des modifications à votre base de données sur le fait que vous voulez probablement le faire manuellement. Donc, maintenez n'importe quel noyau a procédé. Ce changement de toute façon, merci de vous accorder. J' espère que vous avez trouvé de la valeur cette écoute. À la prochaine fois
9. Personnaliser une vue - Bootstrap 3: vous les gars dans ce tutoriel regarderez à la maison avec des aperçus de personnalisation globale et nos applications. Esthétique trinkl Plus comme ou application par opposition à l'application générée autel. Bento épices v point net. Nous pouvons redessiner notre page de destination un voir sur l'écran ici sur nous allons aussi les bateaux ce que Bootstrap a à offrir pour accélérer ce processus. Avant de passer à autre chose, je dois vous rappeler qu'on utilise Bootstrap 3 D Falls. Bootstrap qui est venu avec notre projet est bootstrap trois. On peut passer à quatre. Mais si nous faisons cela et nous courons le risque d'avoir à refaire beaucoup de travail, donc je recommande que nous continuions à utiliser serait strip ou bootstrap documentation, nous pouvons aller sur leur site Web, qui est obtenir une bonne sangle. Ou vous pouvez simplement chercher bootstrap, trois sur qui a été suggéré, et ici sera donné toute la documentation derrière tout le bon isme qui ont dépassé l'offre. Tu n'as pas à recommencer à zéro, mais je vais t'emmener à travers un tour d'orteil rapide. Appréciez ou Wilshire apporte à la table. Maintenant, les deux bandes est le cadre CSS. En un mot, les développeurs ont observé avec des modèles de développement. Au fil des années, Andi est venu avec un tas de classes ou stars de Chiesa qu'ils pensent que les gens ont
besoin plus loin , qu'ils avaient un premier agenda mobile. Donc, l'utilisation de bootstrap l'aide à accomplir un premier mobile sur une conception propre, car ils l'auraient sauvegardé avec le style CSS couramment utilisé sur je garde un dire ceci, mais laissez-moi, par
exemple, les tables de coupe. Les gens sont toujours longues tables. Les gens veulent toujours que leurs tables ne ressemblent pas tout à fait à des tables. Will Bootstrap nous a donné une table nous. Tout ce que nous avons à faire lors de la création et les tables donnent la classe iwas table sur notre cordon de table. Alors ça commence à ressembler à ça. Et si nous nous souvenons que si nos étudiants sur les cours, tables regardent à la fois hors de la boîte, vous pouvez également ajouter des propriétés de force. Vous pouvez le faire à la frontière. Mais le fait est que bootstrap rend cela très facile parce que vous ne le faites pas du tout,
voir aider à accomplir tous ces voleurs à sur les cours. Cela jeter un coup d'oeil aux boutons. La dernière fois que nous avons regardé à changer l'aspect des boutons entiers, donc nous avons vu que l'on écume TTN et puis e t et tiret quelque chose. Donc, vous avez et et Dash consacre à obtenir ce bouton de recherche Bijan Dash Primaire pour obtenir un succès bleu à l'un ou l'autre bouton vert sur tout. Donc, tout est clairement décrit ici sur leur site Web. Ils vous donnent l'exemple sur, ils vous donnent le noyau de cet exemple sur. Vous avez seulement besoin de traduire cela dans votre besoin et votre spécification afin que vous puissiez aller de l'avant et commencer à l'utiliser. Ils prennent en charge les images réactives parce que je suis G Dash responsive. Cela signifie que votre image commencera à se redimensionner en fonction de la taille de votre écran. D' accord, pour que tu puisses, Pero qui est ? Je ne recommanderais pas que vous essayez de tout mettre en mémoire parce que cela peut être écrasant. Mais comme vous avez un besoin, si vous voulez quelque chose pour débarrasser notre bleu ou quelque chose, vous pouvez venir sur. Vous pouvez passer par la catégorie CSS, ou vous pouvez aller à la catégorie des composants, qui a encore plus de choses. Vous avez de la place pour les blessures. Vous avez votre alerte de danger par rapport à votre alerte de réussite. Vous avez des étiquettes qui peuvent ajouter du texte dans la section du script de travail. Vous avez des trucs pour plus de détails. Si vous voulez de la pop Hope, ça a l'air attrayant. Vous avez des onglets si vous voulez une expérience de baignoire sur votre navigateur et ils vous donnent le JavaScript . Et si vous vous souvenez d'une partie des scripts qui vous auraient été donnés, le projet inclut un bootstrap Js. Donc vous n'avez pas de travail supplémentaire à faire que d'incorporer cette cour à la vôtre ? Andi, utilise-le à ton avantage ou à ton avantage. Alors vous conseille de regarder à travers, Voir ce que vous avez besoin sur l'utilisation de ce sous. Donc, pour cette section, nous allons orteil réellement re style notre terrain d'atterrissage allaient orteils. En fait, ajoutez quelques images sur un bootstrap slider toe notre page d'accueil section ici. Donc nous allons onduler toute cette section Grèce et ensuite nous allons la remplacer par un curseur bootstrap. Je suis allé de l'avant sur des photos de Fix a Beta. Venez. C' est mon aller sur le site gratuitement, photos de
haute qualité sur la plongée sélectionné trois photos que je veux utiliser et a été utilisé
celui-ci retour à l'école. Celle-là n'a jamais cessé de brûler dessus. Donc, il parle d'un vous devez seulement y aller. Cliquez sur Libéré sur Lord Lord, puis il vous demandera de vous inscrire. Je suis juste juste que tu sois dingue. Robots sur Une fois que vous cliquez, Seigneur, il initiera le Donald pour vous. Quelqu' un pour aller de l'avant et faire ça pour savoir. Après avoir fait cela, je dois les mettre tous dans le projet. Je les aurais téléchargés sur mon bureau sur Non, j'ai besoin de les mettre dans mon projet Pour plus d'utilisation de leur site Web, je vous recommande de créer un dossier sur vous, mettre toutes leurs images dans la résidence pliée qu'ils vous donnent pour la structure pour tous les types de maison. Un temps de fichier qu'ils peuvent ne pas désactiver gator pour ses images, donc je vais juste aller de l'avant dans le contenu. Je pense que le contenu est le meilleur endroit pour mettre des images basées sur ce qu'il y a sur le même continent. Ajouter sur votre dossier,
appelez-le des images, puis je peux cliquer avec le bouton droit de la souris sur les images. S' il vous plaît, Dieu va à l'objet existant. Donc, si l'élément existe, ce qui signifie que vous n'allez pas utiliser Visual Studio pour créer l'élément. Mais c'est quelque chose qui est déjà tout là, comme dans ce cas, un fichier image, et vous voulez l'apporter dans votre projet et vous cliquez sur élément existant, puis vous le
trouvez sur votre PC. Donc, j'ai mis le mien sur mon meilleur disque, alors faites défiler et trouvez mon image et en a formé une ici. Visser les fans Elder à et j'ai changé d'avis était l'un des images sur leur ajouté à mon projet. Vous pouvez dire au signe plus qu'ils ne sont pas incorporés dans le projet. Lorsque vous parcourez chacun d'eux, vous verrez de nombreux aperçus de ce que cette image est la meilleure pratique ou pour faciliter l'utilisation. Vous n'utiliseriez pas ce long alter Jerry pour nommer Cool sur le site Web. Maintenant, vous voulez que votre image soit facile à utiliser, donc vous voulez la renommer quelque chose qui est plus approprié pour le but que vous l'avez . Donc, je voulais pour les luges ainsi appelé Celui-ci est comme Dash One sur l'extension est que J. P. G sur jamais renommé Builder en conséquence et non, nous avons les trois images dont nous avons besoin ou ou slash yl. Donc, comme je l'ai dit tout à
l'heure, l'objectif non est de changer les orteils Cette zone grise qui aurait dû être représentée par ce Jumbotron donner sur nous voulons mettre dans un curseur bootstrap dans cette section. On peut juste aller sur le site de la balle frappée pour voir la documentation sur le mauvais état, et c'est l'espoir que nous le ferons. Alors, quelle est la section JavaScript ? Et cherchez la voiture auto. C' est ce que ça fait, parce que c'est une voiture, alors et puis ils vous donnent un exemple. Tout d'abord, secondes de
diapositive mènent leur diapositive car vous pouvez voir le clic fonctionne. Et puis comme vous faites défiler vers le bas, vous voyez que vous donner une montagne hors cour qui est nécessaire orteil ont quelque chose qui ressemble ceci. Ce qu'ils ne vous ont pas donné sont les images qui Mais vous avez juste besoin de regarder cela, apprécié et ensuite modifié quatre ans but. Quelqu' un vient de copier toute cette section hors cours. Retournez à notre projet, collez-le ici. Ensuite, cela peut sembler un peu écrasant, mais si vous prenez le temps de l'apprécier, si vous connaissez HTML, vous voyez exactement ce qui se passe ici. Mais avant quoi que ce soit d'autre, prenons un aperçu de ce que le résultat est. Donc c'est un aperçu de ce que nous obtenons. Un Z conceit est beaucoup moins attrayant, et ce que nous avions avant et nous avons encore un peu de travail pour faire ce que nous pouvons voir le chemin de nos erreurs et effectivement cliquer sur l'IRS. En fait, ennemi, c'est quelque chose qui est visible. Alors allons-y et revenons au studio visuel sur DSI. Quels changements supplémentaires doivent-ils m'arriver ? Est-ce que Carcelle a l'air présentable ? Donc, de retour en studio visuel, regardant la cour, vous verrez une ventilation pour chaque sexe fils qui devrait produire une image. D' accord, donc d'abord, vous voyez que vous avez cette liste ordonnée qui a des alliés dessus a des actions entières
sur Gibbs . Ensuite, vous voyez qu'il a de la poussière de données comme 2123 Celui-ci est brutal comme actif. Donc zéro sera toujours le zéro par défaut. Mais alors, pour les diapositives réelles, vous voyez que chaque diapositive apparaît dans son propre donner que c'est l'élément numéro un sur le désir de numéro deux sur. Nous savons que nous avons trois articles, donc nous avons juste besoin de l'orteil sur tout ce cordon d'échantillonnage en fonction de ce dont nous avons besoin. Et tu ne vois pas ça ici ? Une section populaire pour les contrôles qui héritier d'un remorqueur utilisant des cours de taureaux ici pour ressembler à Pareles sur ces ondes. Je vais sur le côté pour la prochaine et la précédente. Donc la première chose que je vais faire est de modifier la cour pour notre premier Slatter. Donc l'image je suis allé pour définir la source, changer de Ellipsis et j'ai eu cet espace de contrôle pour obtenir cette allusion d'intelligence. Je me souviens de mon dossier d'images à l'intérieur du contenu puis mes images à l'intérieur du dossier d'images sur Je vais dire diapositive un avant le texte alternatif nos ports Nous avons entendu pour la légende je peux utiliser un remorqueur filé Voir, nous avons prévu pour la deuxième section Je vais faire une modification très similaire. Donc jeans SRC glisser sur le changement qui n'arrête jamais Mark Um, juste mettre quelques légendes aléatoires et des textes alternatifs que vous rempliriez dans les années plus correctement quand vous avez votre chance de le faire alors nous avons trois curseurs, certains démonté, dupliquez celui-ci. Déplacez ça. Il existe sur le changement Ceci à la troisième diapositive, je reviendrai et changerai ces deux légendes plus appropriées et le texte alternatif. Quoi ? Je veux juste vous montrer où vous allez tous les deux mettre un curseur de bootstrap sur Nous n'
avons pas à modifier grand-chose d'autre. Ensuite, nous pouvons prévisualiser cela sur. On y va. Donc maintenant, nous avons un curseur dans l'espace où nous avions ce texte généré. Quelques choses que nous pouvons observer sont les différentes hauteurs ou chaque image de sorte que le Carcel pousse et tire le contenu de la page. Pour vous assurer que vos images sont hors des mêmes dimensions sur et âme, votre contenu sera assez cohérent avec chaque curseur. Donc, c'est un aperçu sur tout. Vous allez bateau incorporant le composant bootstrap dans votre site Web. Vous le faites à volonté. Comme vous avez besoin d'orteils, vous ne pouvez pas utiliser un carrousel qui dépend de vous. Quoi ? Vous avez un certain nombre d'options disponibles pour vous pouvez un outil conseils que vous pouvez attacher des listes déroulantes sur tout cela, sort de la boîte avec bootstrap Andi vitesse, et il sort de la boîte avec bootstrap. Donc, à moins que vous ne trouviez un autre cadre que vous préférez comme vous en avez quelques-uns
là-bas , vous pouvez investir du temps dans l'expérimentation avec bootstrap et voir ce qu'il a à offrir. Non Une autre chose que nous voulons accomplir est de modifier cette section. Teoh n'a que deux options, l'une pour les cours et l'autre pour les étudiants. Donc, comme nous pouvons voir où trois colonnes sur def, nous regardons dans notre code, nous verrons que nous utilisons qui avait attaché pour diviser. Tous étaient un rôle, donc les bottes triples. Est-ce que vous construisez appelé une cigarette de rôle ou une table sur ? Comme vous le savez, chaque table a des colonnes, donc Full Strap a un excellent système qui une fois que vous avez un rôle, vous pouvez le diviser en jusqu'à 12 colonnes sur dans. En outre, vous pouvez spécifier les colonnes Khomeni doivent être présentes ou entières grandes. Une colonne doit être basée sur la taille désactivée. Les écrans de l'écran typique sur n'importe quel ordinateur portable ou ordinateur serait dans la raison vide. Alors ils vous donnent trois colonnes. Une opération sur un pistolet. Un deux sur trois. Non, on veut seulement. Donc, je vais supprimer le 3ème 1 Je veux modifier celui-ci, en
gardant à l'esprit que nous avons jusqu'à 12 colonnes que nous pouvons utiliser quelqu'un pour changer ce 1 à 6 . Une liste de six sur Une fois de plus, je sais que je peux le faire parce qu'il a déjà été décrit dans les documentations. Ils peuvent toujours aller à la documentation et lire sur le système de grille pour avoir une meilleure compréhension de ce qui se passe ici. Et puis j'irai en bateau pour changer le titre ou la légende qui est utilisée ici. Alors, les chevaux et faites ça. Je changerai aussi de partenaire. Je n'ai vraiment pas besoin de faire de la publicité. C' est fait sur le site de mon assistant à la gestion de l'école, donc je vais mettre un joli paragraphe sur. Alors je n'ai pas besoin de lier orteil sur un voyage si tout le chemin dehors de ma compétence, quelqu'un pour changer cet orteil, un bouton qui veut mes cours Donc je peux utiliser mon lien d'action quelque part que mon signe et appeler pour mon Isham off helper pour mes liens d'action sur. Ensuite, je veux imprimer qu'il faut apprendre la guerre. Je veux que ce lien d'action pour aller aux Knicks sur cet index serait dans mon cours se déroule. Et puis je vais répéter ça pour les étudiants. Six. D' accord, donc moi les ajustements ont ajouté un sous-titre pour cette section. Andi, en fait. Ensuite, on peut aller de l'avant en avant-première. Ceci donc nous voyons ici que des changements ont été mis en œuvre et nous pouvons voir que nous
n'avons même pas divisé entre les tubes. Rappelez-vous que nous sommes 12 12 places orteil vient que nous sommes capables d'utiliser Andi. J' ai dit que je voulais que l'un ou l'autre soit six sur ces 12. Donc, nous avons des forces qui prennent jusqu'à six quand nous obtenons des étudiants pour s'asseoir. Donc, c'est une façon agréable et facile d'obtenir les choses côte à côte. Dans le mouvement d'émission traditionnel, vous devez utiliser live, puis vous flottez vers la gauche, puis vous transportez les marges entre les deux pour vous assurer qu' elles sont, vous savez, une certaine distance les unes des autres serait sangle. Cela vous donne un excellent système et ce Hey, mettez-les côte à côte. Dis-moi comment tu veux qu'ils soient une centaine d'arrestations. Andi, cette hauteur d'enterrement pour les photos ennuyeux. Donc je ne vais pas le réparer sur ma télé pour que vous puissiez modifier et trouver des images cohérentes. Non. Une autre chose que nous voulons faire est de récupérer nos boutons. Nous avons des liens, mais nous voulons qu'ils ressemblent aux boutons qui étaient l'original. Donc, je vais juste prouver le projet sur nous allons ajouter des classes Lose Wilshire maintenant à partir exemples
précédents, vous vous souvenez que nous initialisons un objet Eric vierge sur dans des objets distants. Nous spécifions que nous voulons la classe d'attribut sur. Ensuite, nous avions nos valeurs, donc nos valeurs seraient une bande oubliable. Documentation bt n sur Bt et tiret la classe que vous voulez. Je veux qu'un groupe sur quelqu'un dise primaire sur la même chose pour arrêter ça ou les étudiants. Quoi ? Je vais rencontrer celui-là. Soyez un vaisseau plus léger juste pour que nous ayons une diversité afin que nous puissions rafraîchir et voir à quoi cela ressemble sur There we go. Donc, nous voyons que ce cercle horrible fonctionne. Nous avons de l'ordre et plus ressemblant à un bouton sur nos étudiants ressemblant à mais aussi Andi, vous savez qu'ils étaient tous les deux des étiquettes d'ancrage. Donc bootstrap Milos u deux style une étiquette de cheville typique sur moi. Tu ressembles à un bouton. Alors allez-y et expérimentez avec bootstrap. Expérimentez avec rendre votre site Web plus propre que le mien. Est-ce que la version Onda ajouter des styles, supprimant de sorte que le tribunal par défaut et de rencontrer il est plus personnalisé
10. Personnaliser une vue - Personnaliser une donnée supplémentaire: Hé les gars. Donc, dans ce centre sur l'ajout de nos inscriptions à nos étudiants page détaillée non sur inscription dans moins d'appels dans notre base de données comprend un étudiant que je d. sur. Bien sûr I d Cela sert la longueur d'un étudiant orteil un cours qui signifie que vous avez beaucoup d'
étudiants étant liés à de nombreux cours. L' objectif derrière cela est de s'assurer que lorsque nous cliquons sur la page de détails d'un étudiant , nous verrons que cet étudiant est actuellement activement inscrit aux cours X y Z. Non, comme résumé rapide, nous savons que nous avons fait notre exercice d'échafaudage pour nos étudiants et que nous pouvons en créer
un nouveau à sa vue. Détails et supprimer. Non, Si je clique sur le bouton Détails, il déclenchera un appel à notre action dans nos étudiants Controller A points de pause centre et je suis actuellement en bateau amarré Onda. Nous voulons juste jeter un oeil à l'objet qui revient lorsque nous cliquons sur les détails. Donc nous allons chercher un étudiant sur l'idée qui a été adoptée en 2000 et deux Onda. Nous pouvons voir que l'un a été récupéré parce que nous ne sommes pas revenus sur tous les objets. Maintenant, quand nous regardons dans cet objet va voir que nous avons le prénom, le nom, le deuxième prénom sur. Nous devons aussi les inscriptions. Donc, cet étudiant est actuellement associé à deux cours dans notre tableau d'inscriptions. Et lorsque vous sortez rapidement,
déboguez plus sur, nous jetons un coup d'oeil à notre base de données pour valider cela clairement. Donc, dans mon objet Explorer, je vais juste faire un clic droit cheval et regarder le théâtre ici. Nous avons trois cours. Introduction à voir Sharp. C' est un homme en calcul sur l'inscription DIN. Nous pouvons voir que nous avons des étudiants avec le I D 2000 et deux et roll toe les deux cours avec des idées deux et trois. Je ne vais pas commettre ces deux souvenirs. Onda, toute évidence montrer cela à l'humain ne fonctionne pas vraiment. Donc, maintenant, nous allons voir comment entité Framework le rend facile pour nous. Les données se lient sur l'affichage des données qui ne sont pas directement dans notre tableau à l'intérieur de notre vue. Donc ici, nous avons ou détails vue pour l'étudiant, et je vais juste ajouter quelques informations à son comprendre pour voir les détails de l'étudiant sur. Je laisse tout le reste, comme c'est le cas sous ce dernier remorqueur dynamique, je vais commencer à remplir avec un cordon qui va générer un tableau
montrant toutes les inscriptions pour ces étudiants. Maintenant, cette table va sembler assez similaire. Un orteil auquel nous sommes habitués de notre discours d'index. Si vous vous souvenez que notre discours d'index a une table, il a un rouleau supérieur avec quelques en-têtes, puis il a un morceau off. Oh,
ça génère Rose sur des colonnes basées sur les données qui reviennent à l'intérieur de ce modèle. Maintenant, nous avons un modèle qui est passé dans notre discours de détails. Mais contrairement à, ou page d'index, ce n'est pas une collection. Il a, cependant, une propriété de collection en elle sous la forme hors inscriptions, qui est ce que nous venons de voir dans de bateau amarré dans notre contrôleur d'étudiants. Donc, nous allons aller bateaux créer une table qui fournira rose sur les colonnes basées sur les données provenant de la collecte de plus d'inscriptions. La première chose dont nous avons besoin, c'est notre table. Puisque nous utilisons bootstrap, nous pouvons rapidement rendre cette table attrayante en ajoutant quelques classes de table. Donc je vois la table. Et puis je voulais être convaincu et réactif. Ensuite, nous générons notre règle la plus haute, qui aura nos en-têtes de table. Donc, pour nos en-têtes de table, je veux le titre du cours sur Comprend le contrôle D et dupliquer ceux-ci. Andi, je voudrais les crédits. Je ne suis pas sûr si j'ai besoin de supprimer cette prochaine étape. Nous voulons utiliser plus, vous
réserver et commencer à générer dynamiquement des règles. Selon Toa ce qui revient dans notre propriété d'inscription. Donc, je vais utiliser mon signe et écrire le mot pour chaque ouverture que l'ouverture. On veut du feu, quelque chose que je peux appeler ça des inscriptions. Et puis nous avons un mot clé en C pointu appelé modèle. Non, ce mot clé incarne toutes les données qui reviennent à l'intérieur de ce modèle sur celui-ci commence par un M
majuscule quelqu'un pour écrire le majuscule et le point du modèle. Nous allons voir nos inscriptions,
qui, qui, si nous regardons attentivement le type de données, nous voyons qu'il s'agit d'une période de collecte. Donc pour chacun d'entre eux, je vais générer une règle. Donc, euh dans cette règle, je veux deux colonnes. Andi, je comprends de dupliquer ça dans cette colonne. Je dis toujours que je n'aime pas imprimer du texte sans étiquette. Donc je mettais tout ce qui allait aller dans cette colonne à l'intérieur d'un Peter. Ensuite, je peux simplement référencer directement l'inscription en utilisant mon inscription au signe, qui n'est pas mon objet hors inscription de type. Donc, sur l'objet d'inscription fournira le cours. L' inscription de la société centrale I d. Les étudiants de niveau sur l'étudiant i. D. Donc, je vais dire cours. Puisque je veux le titre du cours, je dois l'obtenir à partir de l'objet du cours. Donc, je vais dans un objet de cours et utiliser mon opérateur fille une fois de plus sur. Ensuite, je pourrai obtenir le titre. Je ferai la même chose pour la prochaine, et j'ajouterai des inscriptions. C' est un cheval, pas des critiques à la fin de cet exercice, ce que nous aurons est une table générée avec tous ces attributs avec deux colonnes 14 titre de cours, une pour les crédits. Andi, toutes les données associées pour la lisibilité humaine afin que nous puissions aller de l'avant et passer en mode débogage et voir ou travailler les charges de RPG. Nous pouvons voir très clairement les fruits de notre travail qu'ils ont ou table avec nos en-têtes sur. Nous avons des données lisibles par l'homme en cours d'affichage. Donc, au lieu d'afficher juste l'ID au lieu de devoir aller écrire dans ses articulations pour obtenir le cadre d'entité de données réel, il est assez facile pour nous de simplement appeler les
données à la demande. Maintenant, j'ai oublié une colonne parce que l'étudiant sait à quoi il est inscrit, mais ils ne connaissent pas leurs grands. Donc je vais juste revenir au studio visuel sur modifier. Oh, notre point de vue sur je vais ajouter une colonne pour les notes. Donc, j'ai dupliqué crédits et comprendre pour dire, crée ou vert. Et puis je vais ajouter une autre colonne à l'intérieur de cette règle, qui a été orteil ont les données de cupidité correspondantes. Maintenant, la cupidité est à l'intérieur du modèle d'inscription. Donc, une fois que je verrai les inscriptions, alors j'aurai le grade de propriété. Donc je n'ai pas besoin d'aller en étudiant ou de suivre des cours. Je ne peux pas échapper à Great juste là des inscriptions. Je vais dire ce rafraîchissement. Nous allons voir ou changer et nous y allons. Donc, ces étudiants sont frais. Ils n'ont pas encore obtenu de notes, mais ils voient quels cours ils font sur n'importe qui bouge trébuche sur leur profil. Va également voir quels cours ils font. C' est donc un moyen très rapide d'obtenir des données supplémentaires dans votre vue. J' espère que vous comprenez le concept. Andi. Une fois que vous avez une relation, vous pouvez soit appeler sur la collecte de données connexes ou appeler directement sous les données connexes afin que vous puissiez aller de l'avant et tout, maintenir la situation d'inscription et commencer à créer des inscriptions où vous associez avec des cours sur Did. Vous pouvez consulter les détails de l'inscription avec les détails du cours ainsi que les
détails de l'étudiant . Ça regarde, et j'espère que tu en as une bonne.
11. Ajouter des valorisations de données aux formulaires: Hey, les gars, bienvenue à une autre vidéo passionnante dans notre voyage avec le développement Web s p dot net NBC. Aujourd'hui, nous allons chercher à ajouter des validations à nos formulaires. Maintenant, les validations sont très importantes parce que lorsque nous acceptons les entrées de l'utilisateur essayant de
démarrer dans notre base de données, nous voulons nous assurer que tout ce que nous transmettons avec la base de données respecte certaines règles. À tout le moins, une règle peut être comme,
vous savez, vous attendez une valeur de texte pour un champ de texte ou nous nous attendons à une valeur de nombre pour un champ de nombre ou votre corps de texte devrait être à une certaine longueur de ce genre de choses. Ce sont des validations que nous voulons nous assurer que nous faisons du côté client, ce qui signifie que nous ne voulons pas qu'il essaie de frapper la base de données avec des données invalides avant de savoir si ces données sont admissibles, sont pas. Nous voulons ajouter certaines règles à nos formulaires, sorte que, avant que l'utilisateur ne puisse réellement soumettre ces informations, nous pouvons nous assurer que tout correspond à une certaine norme. Maintenant, pour garder les choses hors, nous allons jeter un oeil à notre action de création dans le contrôleur de cours sur, comme vous pouvez le voir, euh, déjà en mode débogage. Mais nous voulons jeter un oeil à ce qui se passe lorsque nous soumettons des données. Nous avons donc notre action de création qui rend notre forme pour les chevaux libres. Comprendre ? Pour en parler, cliquez
rapidement sur les cours. Ensuite, nous pourrions créer de nouveaux, ce qui rend notre créatif vous sur. Ensuite, nous demandons, l'utilisateur regarde le titre de ce cours sur le nombre de crédits qu'il ne devrait pas être. C' est un numéro sur, mais je ne devrais pas être capable de mettre du texte. Ce genre de choses importe quand vous voulez valider l'information qui revient. Si vous jetez un oeil à ce qui se passe sur le post, vous voyez qu'il vérifie si l'état du modèle est évalué, ce qui signifie qu'il évalue toutes les informations qu'il vient de penser de l'utilisateur et cette information est-elle valide ? Ce que nous allons faire dans cette vidéo est de mettre en place nos propres validations de set off afin que cela évalue
automatiquement nos règles et prenne une décision en fonction de cela. Mais avant de le faire,
nous allons jeter un oeil à la base de données et nous allons jeter un coup d'oeil à ce qui se passe lorsque nous essayons de soumettre des informations. Si nous regardons la table des cours, qui a déjà ici, Regardez le concepteur. Nous verrons que les deux titres sur les colonnes de crédits sont conçus à un faible pas de valeurs, ce qui ,
en toute justice, est probablement pas la meilleure chose à faire, car alors cela me permet de créer un cours sans titre et sans crédits, ce qui ne me sens pas vraiment. Ça touche mon point de rupture maintenant, continuez. Andi va de l'avant et ça crée ce disque vide avec un Novalee pour le titre Onda. Personne pour les caisses. Andi. n'y a rien là-bas, ce qui est quelque chose que nous ne voulons vraiment pas qu'un utilisateur puisse faire. Donc, la première étape serait de changer les règles de validation sont changées règles de type de données sur ou base de données afin que nous puissions retourner à Visual Studio, apporter sur concepteur pour notre base de données de cours, et nous disons que nous voulons pas seul sait donc nous ne peut pas les prendre seuls, sait. Ensuite, on peut cliquer dessus. Ensuite, nous disons hors de la base de données. Cela va nous donner une erreur comme vous le voyez ici, parce que alors nous sommes assis ou base de données n'a pas accepté, sait alors que nous avons des valeurs qui existent. Donc je vais juste supprimer ce pas de dossier. Andi, puisque j'ai une micro opération, je le fais ici depuis que ma cour fonctionne. Donc supprimez ceci. Pas d'enregistrement. Mangez-le encore une fois, nous avons touché un point très. Je vais juste continuer là-bas. Il est supprimé pour que nous sachions que nous pouvons réessayer notre sauvegarde. Donc, je clique un peu sur la mise à jour à nouveau sur puis il est réussi. Cette fois. No Little Strand avait un cours sans titre et sans crédits une fois de plus. Donc nous allons laisser ces blancs parce que nous voulons tester. Si la modification de la non-séance sur les règles qui régissent nos types de données dans notre base de données sera suffisamment
efficace pour définir les validations ici. Donc, lorsque nous cliquons sur créer, nous voyons qu'il frappe réellement sur erreur. Si frappe sur des exceptions dans ce que quelque chose s'est passé en essayant d'exécuter ceci. Et si nous faisons défiler vers le bas et lisons les détails, il dit que nous ne pouvons pas insérer sur la valeur de l'amour dans le type de colonne. Donc, nous voyons qu'un certain montant de validation est en fait offert ici. Mais ce n'est probablement pas le meilleur parce que vous ne voulez pas que votre orteil d'application une pause comme ceci lorsque l'utilisateur l'utilise, ou donner à ces erreurs mains off que l'utilisation de moi ne comprend pas nécessairement. Si efficace. Continuez. Alors vous voyez que la page précède le Seigneur. Une erreur de recherche très méchant que l'utilisateur typique peut ne pas nécessairement savoir comment traiter et que je ne veux pas voir du tout. Donc, nous allons devoir modifier un peu ce comportement, donc je vais quitter rapidement, déléguer plus. Ensuite, nous nous mettrons au travail. Non, ajouter réellement ces règles de validation, nous devons utiliser des classes C tranchants et assez d'implémentations de type Opie ont très fluide, Andi. Solution quelque peu disjointe mais unifiée. Et ça ressemble à un paradoxe. Mais au fur et à mesure, vous appréciez ce que je dis. Donc la première chose que nous voulons faire est de remorquer jeter un oeil à notre modèle. Nous avons donc dit que nous voulions commencer à ajouter des validations à nos cours. Donc, nous sommes seuls dans nos modèles Boulder dans notre diagramme mixte média sur. Ensuite, nous avons ravi dans notre modèle le TT on Look à notre classe de cours. Nous devons apprécier ce qu'il y a ici. on Rappelez-vous que chaque champ qui est décrit ici est synonyme de ce qui est dans la
base de données. Donc le père que nous voyons ici que le crédit est encore une valeur inconnue qu'il est que nous avons créé ou plus tard, le baseball. Nous ne l'avons pas ouvertement nos modèles. Donc, c'est la première étape que vous devez prendre certaines personnes déchiré Edie un Bagram mixte sur. Ensuite, nous faisons un clic droit dans l'espace ouvert et cliquons. Espérons qu'il de l'aiguille ce peuple pour rafraîchir les tables et cliquez sur Terminer ceci, puis les recharges sont des tables et depuis la dernière fois que nous étions ici, J'ai ajouté le deuxième nom et la date de naissance à notre club étudiant. Maintenant, vous souvenez-vous que chaque fois que nous actualisons ou faisons un changement de n'importe quelle sorte de diagramme que nous devons construire Donc vous pouvez soit aller à construire sur, cliquez sur la solution ou maintenez le décalage de contrôle et être sur qui va réellement affecter une construction opérations et aller faire ce changement de contrôle et être sur le mien est déjà construit. Donc, quand nous allons à notre cours ce fichier CS, nous verrons qu'il est mis à jour pour montrer qu'il n'est plus une valeur notable. Il doit avoir un int. Les tests Andi ont une chaîne sur le test n'ont pas été blessés. Vous êtes ici pour que vous puissiez voir que cette modification a été effectuée avec succès. C' est donc une étape 1 pour la validation. Veiller à ce que notre base de données reflète nos ambitions. deuxième étape de notre validation est de créer ce que nous appelons les données de méthode Les classes sont les accusés ont besoin amis que vous sentez que vous appelez les métadonnées, qui est à peu près des données sur les données. Donc, dans ce cas, nous avons plus tard dans la forme hors de notre modèle. Notre classe sont nos tables de base de données sur les données, un bateau qui serait des descriptions que nous voulons. Et dans ce cas, les descriptions que nous voulons seraient nos règles de validation. Ok, Donc ce que nous voulons faire à ce stade est de créer des classes qui décriraient des règles qui régiront sur les valeurs ici. Maintenant, depuis le travail, nous sommes sur le point de faire concerne les modèles et le meilleur endroit pour aller de l'avant et créer les incendies dont nous avons besoin serait dans le dossier des modèles. Mais alors si vous regardez dans les modèles pour là, vous voyez que vous avez déjà une sorte de variété. Adi raide. Vous avez créé le projet de la manière que je l'ai fait avec le compte d'utilisateur individuel configuré
au début,
Ensuite, vous auriez ces modèles de vue déjà existants. Donc, afin de ne pas mélanger et maintenir cette séparation des préoccupations, je vais juste créer un nouveau dossier sur je vais l'appeler Meta Classes sur, puis à l'intérieur des classes moyennes. Ensuite, j'aurai ces classes de méta données auxquelles j'ai fait allusion juste savoir que le 1er 1 que je crée hors cours est une pour les cours. Donc, à juste titre, s'il vous plaît ajouter Créer une classe sur. J' appellerai celui-ci cours Dieu. Et puis ça me donnera cette classe vide. Non. Mon premier objectif est de rencontrer ce miroir de classe vide mon modèle réel afin que je puisse revenir à mon cours sur ce fichier CS. Trouvez toutes ces propriétés qui sont là pour moi. Je n'ai pas à amener. Je n'ai pas à valoriser que ce soit. Cours I d parce que lors de la création sont une guitare. Toute opération. Nous n'avons pas besoin de valider ce que le corps est ici, mais nous pouvons vouloir restreindre tout titre de cours peluches sur les orteils. 50 sur. On ne voudrait pas que les gens mettent 50 crédits pour n'importe quel cours qu'ils créent. Peut-être que le maximum au-dessus des critiques que n'importe quel cours peut être est de huit. Donc, on va juste aller aux pieds. Copiez ces deux-là. Metaz-les dans notre classe meta plus tard, puis procédez orteil, ajoutez ou validations avant de passer à autre chose. Afin d'ajouter nos validations ou ce que nous appelons des données sur les notations, nous devons inclure notre bibliothèque qui nous donne cette fonction afin que nous puissions voir utiliser des noeuds
système du modèle polonais. C' est plus tard sur les notations. Non, vous ne vous en souvenez peut-être pas, mais quand vous verrez le modèle que je vais utiliser, c'est que votre studio reconnaîtra ce modèle en ville que, Hey, c'est illégal. Vous devez inclure cette bibliothèque pour l'utiliser sur. Ensuite, ils procéderaient à suggérer que vous incluiez cette bibliothèque. Donc, comme je l'ai dit, la première chose que je veux faire est d'inclure un terrain de ficelle sur 50. Donc littéralement, je vais dire longueur de chaîne et leur intelligence finit pour nous sur. Je vais voir 50. Non, si je retire ça sur avis qu'il n'est pas devenu à la vie le genre de tout le monde, un peu avidité. Mais celui-ci est en fait un texte blanc gras. Si j'ai supprimé cela que de taper, cela provoquerait un début en studio visuel. Et puis ils me suggèrent que j'ai besoin de cette bibliothèque afin que vous puissiez toujours commencer à la
taper avant, puis inclure la bibliothèque plus riche, activement ou même simplement inclure cette bibliothèque, et alors vous n'avez aucun problème pour aller de l'avant. J' ai aussi dit que l'ancien entier je veux restreindre la plage de valeurs à partir d'un. Donc, cela signifie que vous ne pouvez pas avoir un cours avec zéro crédit dessus ne devrait jamais le passer. Non, il est digne de nœuds que vous puissiez réellement les inclure directement sur votre cours. C' est l'année. Donc, vous n'avez pas nécessairement à aller et créer un tout nouveau fichier un tout nouveau trimestre sur l'
ensemble du nouveau fichier, puis commencer à partir de zéro et mettre ces théories les mettraient effectivement ici au-dessus du titre sur les deux crédits. L' inconvénient de cela,
cependant, cependant, est que chaque fois que le modèle est généré ou que Rita régional est daté ou change et que vous construisez votre projet. Ensuite, vous allez réellement avoir ce fichier CS ainsi que tous les autres. Nous sommes restés ici rafraîchis, donc toutes les modifications que vous y avez apportées seront éliminées. Donc tu ne veux vraiment pas faire ça ? Parce que cela conduirait à beaucoup de travail libre. Et tu dois le faire à chaque fois. Donc, je suggère que vous créez ce nouveau fichier sur. Ensuite, vous l'associez à ce modèle en utilisant une classe partielle sur ce que nous avons cela. Comme je l'ai dit, il est joint parce que ce sont en fait des fichiers différents, mais unifiés parce qu'ils font référence les uns aux autres. Donc, peu importe ce qui se passe ici. Même si la table des cours s'empare d'exister. Ces cours et métadonnées table de cours n'empièteront en aucune façon sur l'opération votre assistant. Ensuite, nous allons créer une autre classe. Andi en do pointu. Vous pouvez utiliser un cessez-le-feu. Les trous, beaucoup de classes. Certains disent que c'est une mauvaise pratique. Certaines personnes le pratiquent,
c' est à vous de décider. Vous pouvez décider ce que vous voulez faire. Je vais juste utiliser ce personnel de la CIA appelé méta cours méta data. Andi, je vais juste créer un autre cours public, mais celui-ci sera partiel, donc public partiel. Je vais lui donner le même nom que le modèle auquel je voulais être associé. Donc, c'est l'une de ces notes, ou Beatrix, où je peux créer Désolé, ce nom du cours de classes que je peux créer une classe partielle et lui donner des propriétés
dessus fonctionnera en conjonction avec la classe d'origine. Ce que je voulais faire, cependant, est associé à la classe de métadonnées. Donc, je vais utiliser une autre donnée sur la notation sur nous un meta manger un type sur. C' est une certaine fantaisie c forte qui va se produire ici, mais il peut étudier ce modèle sont tout simplement pas de trou à faire quand le moment est venu. Je veux donc l'associer à des cours, des méta-données. Donc, à la fin de cet exercice, il aurait créé une classe de méta données qui aurait des notations de données qui régiront les validations de vos champs sur. Vous l'auriez associé à la classe venant de votre modèle juste dans un très indirect sur Opie, comme nous n'avons aucun changement final avant de passer à autre chose. C' est très, très, très important. Et c'est une erreur courante que les gens essaient de maintenir cette séparation des
préoccupations, mais la classe partielle que vous avez définie doit être dans le même espace de nom que la classe qu'elle est. Eh bien, disons à part. Donc, si je vais à des cours sur gars, regardez l'espace des noms et voyez que c'est dans la gestion de l'école que les modèles que nous regardons, où l'espace des noms est pour la classe partielle. Vous voyez que c'est, dans les modèles pensés classes de métal. Donc, chaque dossier détermine cette hiérarchie d'espace de noms, n'est-ce pas ? Donc, nous allons du dossier Toe Project School Management appelé Models. Donc l'école de mesure orteil se permettre sont appelés modèles pour un autre titulaire appelé classes de lettres, et qui est son espace de nom. Donc, ce que nous voulons faire est de supprimer les classes de métal de l'espace de nom. Nous pouvons le laisser physiquement dans le dossier, mais l'espace de nom l'associera à ce dossier sur tous les autres fichiers de ce dossier. Donc, ce faisant, nous mettons ou classe partielle sur la parité le sens supérieur de la voiture d'art avec ses
homologues d'origine afin que nous puissions aller de l'avant sur réellement déboguer et voir si notre validation fonctionne nos invités. Donc, nous allons regarder la section des cours sur juste exécuter quelques tests pour voir si nos validations
fonctionnent . Donc, nous allons créer de nouveaux sur. Ensuite, tout d'abord, nous allons simplement cliquer sur Créer. Donc, l'attente est qu'une fois que des données invalides sont envoyées à travers, il sera à nouveau nos deux tentatives de créer un enregistrement sur ce plaidoyer sur l'air un message afin que nous puissions créer sur sans rien sentir. Dans notre nous voyons que le plus grand rechargement avec un message d'erreur le champ crédits est requis . Avons-nous pu rapidement examiner d'où vient cet air M. ? J' apporte un studio visuel toujours en mode débogage. Andi, je vais juste passer à notre point de vue pour créer des cours sur. Ensuite, nous pouvons simplement jeter un coup d'oeil à ce qui se passe dans cette section des crédits à l'extérieur de la ferme. Alors rappelez-vous, nous avons cette étiquette, qui nous donne le mot générique sur. Ensuite, nous avons les modifications qui nous utilisent sur la zone de texte, mais puis rouge en dessous qu'il a réellement un problème. Mon assistant, c'est renvoyer un message de validation. D' accord, on voit que le texte de la classe bootstrap danger est d'être un vol. Donc, c'est essentiellement de voir qu'une fois que j'ai essayé de soumettre sur. Je vais aller voir mon contrôleur très rapidement pour mettre un point de rupture à cette décision. Alors il crée. Et si c'est ce point sur, alors il évalue si l'état du modèle est évalué et vous voyez que cela évalue les chutes, comme toutes les autres fois dans les exemples précédents où il est validé est devenu vrai. Donc, si cela valide le vrai, alors cela devrait arriver. Le fait qu'il passe aux pieds tombe signifie qu'il retournera juste la même vue, qui est notre vue d'époque. Andi. Il retournera toutes les données qui ont été soumises sur, nous savons que nous n'avons pas essayé de soumettre quoi que ce soit. Donc tout revient, n'
a pas de zéro alors c'est ce qui déclenche l'affichage ou le message de validation. Donc, si je mets un titre et vous pouvez voir que je testais cette chose, donc j'ai mis dans un titre avec clairement plus de 50 âges, et pour rappeler que sont la validation. Règle quatre cours disent que nous ne devrions accepter que 50 sont jusqu'à 50. Donc, si je prends, crée, il frappe à nouveau. Et il dit que l'état n'est pas valide, donc il retourne la vue avec les données sur nous voyons, nous récupérons nos données. Combien de temps à part à ce joué sont un message que nous dépassons ou beaucoup maman Lynn. Si je vois un cours critique 10 rappeler une fois de plus que la règle de validation dit 1 à 8. Donc ça veut dire quoi que ce soit en moins d'un et quoi que ce soit de plus que ça déclenchera sur Aramis est si je pouvais le créer une fois de plus c'est nos points de rupture. La validité du modèle est fausse, donc nous pourrions continuer. Il s'affichera sur Aramis approprié s'affiche à l'utilisateur. Hey, votre chef a tort pour cette raison. Et donc c'est une fonctionnalité assez cool que nous pouvons utiliser l'assurer que pour les utilisateurs sont rester dans les limites de ce que nous attendons pour nos données afin que je puisse créer un cours légitime est être les Nets et V. C. Validation à ce sujet pourrait être un cours critique sur. Ensuite, je pourrais créer et puis nous voyons les seins sont des points de rupture sur cette fois. Tout est valide parce qu'il est valide. Il va aller de l'avant et l'ajouter sur DSI des modifications, puis rediriger vers notre liste hors cours. Donc j'appuie sur Ponting, l'attente est comblée là que nous avons sur le brandy, bien sûr, afin que nous puissions mettre en place des validations sur vos champs. Aucune annotation de données n'a en fait un but plus grand que de simples règles de validation assis. Ils peuvent en fait influencer ce qui est affiché pour un formulaire ou pour la valeur dans le nom d'affichage des fonctions d'aide. Comprendre ? Sauter par-dessus les orteils est vraiment difficile et vous montrer ce que je veux dire. Je me souviens que nous avons l'étiquette quatre sur alors dans notre vue de détails, nous avons le nom d'affichage pour donc vous pouvez réellement utiliser des données une notation pour influencer le façon
simple de changer cela serait trop grave et réécrire ce qu'il veut. L' inconvénient à cela est si le champ change ou quelque chose sur ce qui devrait être affiché, change et que vous avez qu'il se trouve à différents points de votre projet. Ensuite, vous allez devoir passer manuellement et le changer à tous ces points qui peuvent être fastidieux. Si vous cependant piquant, utilisez la question de la fonction sur, alors vous utilisez votre annotation de données qu'une fois que vous rencontrez le changement dans la notation de données, il sera fait à travers votre après Keisha. Donc, comme un exemple rapide pour notre formulaire de cours, nous avons des titres et des crédits, tout comme les champs sont dans plus de huit de ces titres et crédits. Donc, comme ils apparaissent dans notre base de données, c'est tout ce qu'ils sont créés dans nos crédits de titre modèle. Sur ce est ce qui sera affiché dans notre étiquette pour le titre sur ou page sur les crédits. Si vous allez aux détails, nous voyons le titre et les crédits. Non, ça semble innocent, et ça ne semble pas important pour les cours parce que nous n'avons qu'un mot. Qu' en est-il de l'affaire des étudiants, où nous collectons en fait le
prénom, le nom, inscription huit et d'autres choses pour que vous puissiez voir ici que le nom de famille apparaît comme il fait dans la base de données sans espace, pas d'espace discernable ici pour la lisibilité humaine. Si nous cliquons sur les détails qui voient tout sur les étudiants et une fois de plus ce n'est pas très humain, lisible ou amical. Maintenant, quand nous allons à des étudiants, contrairement aux chevaux, nous n'avons pas qu'un seul mot, mais nous avons deux mots, donc nous cliquons sur les étudiants et nous voyons que nous avons le nom, le
prénom et Roman en sans espace discernable entre ces noms et étiquettes, et ce n'est pas très convivial. Ce n'est pas bon. Nous voulons nous assurer que nos utilisateurs regardent notre écran et se sentent à l'aise pour absorber et digérer nos informations. Si je vais aux détails, voyez-vous, c'est une situation très similaire. Donc, nous allons devoir utiliser une annotation de données, orteil, nettoyer cela et rendre nos étudiants beaucoup plus conviviaux plus tard lorsque nous lisons les informations. Donc, de retour en studio visuel, nous voulons faire est de créer deux classes à associer avec des étudiants une pour notre mental plus tard, une pour plus partielle Andi ont été appelés comme j'ai créé cette ancienne classe méta ici ou bras . Ça le fera non plus. Mais nous devons par la suite changer l'espace du nom pour que tout se déroule en douceur. Quelqu' un directement mauvais va en classe et nous créons des étudiants. Oui, monsieur. Ensuite, la façon la plus simple de le faire est juste une copie. Tous les champs qui reviennent de notre modèle d'origine dans notre base de données, nous explorons le
bas dans le moyen d'expulsion, nous trouvons des étudiants que CS et ensuite nous pouvons copier sur tous ces notent une fois de plus que ces choses sont disponibles. Donc, pour votre propre but, vous pouvez aller de l'avant et changer le rythme de ces opiacés votre modèle. Mais j'ai vraiment juste besoin d'obtenir les annotations de données ici pour les méta-données des étudiants. Donc, j'ai copié ceux à travers et nous voulons exécuter des étiquettes personnalisées pour tous
ces besoins de ces champs du 1er 1 Je vais faire son nom et je vais voir la longueur de la chaîne . Andi, je vais juste mettre en place une validation. Je ne veux pas que quelqu'un entre un lien de chaîne sur plus de 54 nom de famille. Donc, je suis assis sur une validation juste ici sur. Avez-vous vu la flèche est affichée et Visual Studio me dit que je dois inclure cette bibliothèque afin d'utiliser cette fonction. Deuxièmement, je veux voir que l'affichage a besoin orteil ont des noms sur aller définir un streaming personnalisé. Vous pouvez toujours faire attention aux conseils d'outils là, les guidant
toujours sur les valeurs qui peuvent entrer. Nous voulons le nom, qui est ce qui va être affiché dans l'industrie de l'UI. Cette description et de vérifier ce qu'il est sur je veux afficher dans le dernier nom d'espace. D' accord, donc on s'éloigne du nom de famille comme un mot perceptible à deux mots qui peuvent juste réutiliser ces 100 stations pour le prénom. Je n'en ai pas plus de 50 sur un prénom. Il suffit de mettre de l'espace pour en faire une inscription plus lisible. Eh bien, je n'ai pas besoin de spécifier une longueur parce que c'est une date. Le type de données est déjà défini. C' est un grand nombre de sait Quoi qu'il en soit, Andi, je veux afficher les besoins d'inscription avec cette pièce. Ou mieux encore, ça a changé un peu et les Romains et le récompenser juste pour vous montrer que ce n'est pas une question de nous mettre la paix ici. Vous pouvez étiqueter manger ce que vous voulez sur votre formulaire. D' accord, sur moi. Fais la même chose pour Middle Liam. Donc, le deuxième prénom je limite le nombre de caractères assis au milieu de l'espace, le nom et la date de naissance aurait des règles similaires pour l'inscription, mange et symboles déteste de toute façon. Donc cet idiot de naissance et ensuite la deuxième étape de tout ce processus de transformation, il est de créer un public plus public Harsh. Oh, donc sur appel, l'élève Onda associe la méta haine une classe avec elle et vous pouvez regarder en arrière l'école précédente. Mais je vais juste cibler ici le type de données Meta sur puis entre parenthèses nous voyons le type off. Désolé. Tapez désactivé. Andi, épelez qu'il devrait être temps libre étudiant meta plus tard comme notre finale après laquelle
aurait probablement pu venir en premier. Quoi qu'il en soit, nous voulons nous assurer que notre espace de nom est le même que le nom Space pour notre part cible classe Et après avoir fait tout cela,
nous pouvons aller de l'avant et continuer avec nos développements sont en débogage et voir si tout clique Non, Lorsque nos étudiants page se charge, vous pouvez commencer à voir la différence est déjà que vous voyez que l'espace nable désert entre
le nom de famille prénom date hors inscription Donc, les étiquettes ont changé. Si nous allons créer de nouveaux voir que les étiquettes pour le formulaire ont changé un peu de date de nom hors inscription inclura jamais la date de naissance sur la création âge encore détails Donc partout qui est dynamique Ali en utilisant ce HTM une aide que nous avons pointé arches en détail. Ce bébé et quatre ou dans le créer vous avez étiquette quatre ou dans notre index. Ensuite, nous avons ce blâme pour partout où vous avez quelque chose comme ça. En configurant ou des annotations de données sur assis classe meta, vous verrez les différentes étiquettes que nous avons définies être affichées pour nos utilisations sur qui est effet et en fait, comment vous allez sur la personnalisation. Qu' est-ce que cela joue sans être trop intrusif, Andi, en tirant parti de la flexibilité que ce cadre vous donne.
12. Introduction à la gestion utilisateur Web: Hé, les gars. Alors bienvenue dans cette nouvelle vidéo. Des moments passionnants à venir. Nous allons examiner l'authentification des utilisateurs dans notre
système de gestion scolaire . Maintenant, jusqu'à maintenant, nous avons examiné comment nous faisons pour créer du contenu, mettre notre base de données. Comment créer des cours étudiants. Eh bien, nous n'avons pas vraiment cherché à contrôler qui peut faire quoi sur ce est ce que l'authentification utilisateur est lu tout sur mettre dans ce besoin de s'inscrire sur le mécanisme Le Guin sur restriction de l'accès basé sur si vous êtes inscrit versus si vous n'êtes pas inscrit, quoi pouvez -vous accéder si vous êtes inscrit sur ce genre de choses. C' est là que nous voulons commencer aujourd'hui. Dès le début de ce faire totalement aurait remarqué dans le coin supérieur droit off pour assez de bar que nous avions un registre né et nous avons eu un bûcheron né. Ils ont été là depuis tout le temps. Je n'ai pas cliqué sur eux ouverts à cette vidéo même quand nous allons réellement voir ce qui se passe maintenant, il est à noter que cela aurait été généré pour vous à partir de l'objectif get sur quand je dis qu'ils vont. Je veux dire, quand tu créais le projet. Il y avait une option là qui vous demandait quel type d'authentification vous voulez. Andi, Il avait quelque chose pour les cônes individuels et tels et ainsi de suite. On va y entrer. J' apporte à travers ces étapes afin que vous puissiez vous familiariser avec ces options. Comment n'avez-vous pas sélectionné d'authentification qu'aucun travail n'aurait pu être effectué au préalable. Avez-vous choisi concept individuel de libéré, qui est ce que j'ai fait. Il aurait obtenu ces boutons ainsi que certains cour générée automatiquement qui aurait été dans l'ensemble du modèle de projet, comme vous l'auriez vu depuis le début. Donc, pour commencer, nous allons marcher dans le studio visuel. Il suffit de créer un projet simulé sur vous obtiendrez de voir les options exactes auxquelles je faisais allusion . Donc, ici, nous avons studio visuel une fois de plus sur ce devrait être une page trop familière. Une fois que vous ouvrez un studio visuel, sont acheminés vers ce pH de début où ils veulent savoir. Voulez-vous un projet, etcetera, etc. ? Nous pouvons simplement aller à un nouveau projet, créer un nouveau projet sélectionner application Web. Je ne vais pas te donner un nom spécifique parce que je ne vais pas vraiment créer quand je veux
juste te montrer de quoi je parlais. Lorsque vous sélectionnez NBC, puis vers la droite, vous voyez que vous pouvez modifier l'authentification. Donc, le droit d'authentification le sait aussi. Pas de m'authentification parce que le dernier projet que j'ai fait, je l'ai créé sans authentification. Il y a des façons d'obtenir l'authentification dans. Vous devez obtenir des bibliothèques d'identité et faire un peu d'argent fonctionnera vous-même. Mais vous pouvez toujours modifier l'authentification à partir du point de création. Ensuite, cliquez sur cônes utilisateur individuels de sorte que vous avez le travail ou l'école sont des cônes, ce qui le lierait à regarder charger n'importe quel de l'authentification Windows, qui utiliserait probablement ,
comme, tenu pour un type interne plus Internet de assis. Eh bien, alors nous aimerions utiliser des cônes d'utilisateur individuels parce que nous n'étions pas nécessairement sûrs de qui accédera. Donc, je suppose, fonction de la nature de votre projet, vous pouvez utiliser individuel ou il peut utiliser tenu. Mais à cet effet, je vais utiliser les cônes utilisateur individuels sur si vous lisez la description,
disent-ils, disent-ils, pour les applications que les histoires de profils dans une base de données de suite sur elle permet également aux utilisateurs s'inscrire en utilisant glands existants pour les plateformes de médias sociaux. Très bien, donc ça génère en fait toute cette cour et ces interfaces, et vous allez juste brancher tout ce qui est nécessaire en conséquence. Donc il peut juste sélectionner un cône utilisateur individuel, Ok. Et puis quand vous cliquez, OK, le projet serait alors préparé, comme nous le savons. Donc, retour à notre projet étaient de la get go. En fait, nous avons sélectionné des cônes d'utilisateur individuels. Nous serions en mesure d'exécuter un registre et d'exécuter un lugging. Donc je vais juste marcher rapidement dans le registre pour vous montrer comment fonctionne la cour. C' est strictement sorti de la boîte. Je n'ai apporté aucune modification sur. Nous pouvons mettre une adresse e-mail. Je peux voir. Et je vois que j'en ai déjà un ici, et je peux utiliser un pasteur. Google est en train de suggérer un très compliqué pour moi. Je viens d'utiliser cela Et puis je clique sur inscrire sur leur il ya, ont été routés vers la page d'accueil où nous savons, voir, clairement affiché Bonjour. Cet e-mail que je viens d'entrer sur son me donnant la possibilité de me déconnecter afin que je puisse cliquer sur
déconnecter puis je suis allé essayer de me connecter avec ces informations d'identification exactes. Andi, demande à Google de voir si ces identifiants parce que, vous savez, le mot de passe était un peu compliqué à retenir. Alors je vous demande de le sauver. Et vous voyez, tous ces écrans sont enregistrés. Écran cet écran de connexion. Tout est éteint. Ceux-ci sont sortis de la boîte avec les cônes utilisateur individuels moteur d'enregistrement d'identité utilisateur . Donc, je peux juste cliquer sur la traîne juste ici sur. Tu vois ça ? Je ne suis pas une route de retour à la page d'accueil où je suis ? Non connecté. Bon, donc au studio ou à un, on va faire une tournée de tout ce moteur. Toute la cour qui aurait été générée. Si vous voulez ajouter d'autres champs, sur
quoi devons-nous modifier ? Nous allons nous pencher sur la façon dont nous pouvons personnaliser cela à la nôtre. C' est
13. Modifications de gestion utilisateur Web: D' accord, alors revenons au studio visuel, nous allons regarder, d'abord, notre ennemi contrôleur de compte. On pourrait s'asseoir, disséquer tout ce qui est ici. Mais ce que je veux vraiment souligner, c'est le fait qu'il a des actions pour la journalisation . Il a,
ah, ah, obtenir et s'opposer à l'action où il valide. Qui est la personne qui se connecte et les antiquités sur l'action ? C' est juste un tas de si les déclarations qui ont été utilisées sur alors vous obtenez un autre tribunal parce que, rappelez-vous, il ne s'agit pas uniquement de vérifier ou de valider par rapport à une base de données locale, mais cela nous donne aussi pourrait fermer le inscrivez-vous à une application en utilisant les cônes des médias
sociaux. Pour cette vidéo, cependant, nous allons simplement examiner le contrôle de l'enregistrement sur la journalisation, en utilisant notre ancienne base de données locale et ce que nous devons faire pour soutenir cela. Maintenant, passons systématiquement par tout ce tribunal, d'accord, accord, donc la première chose à souligner est que dans le dossier Models, vous auriez fait d'autres fichiers, en particulier le modèle d'identité, pas CS contre les modèles. Ne nous voyez pas sur ce fichier serait que l'Isar initial pour l'ensemble du moteur d'identité qui est ce que les contrôles sont moteur d'authentification utilisateur En ce moment, ce moteur d'authentification utilisateur crée automatiquement une base de données pour vous, au moins si vous n'en avez pas déjà un. Si vous en avez déjà un, alors il faut un peu de configuration pour vous assurer que vous allez pointer vers la base de données que vous vouliez pointer dans notre fichier modèle. Les modèles d'identité verront que nous avons deux classes. Utilisateur de l'application sur l'application, db Contexte et application. Db Context pointe vers une chaîne de connexion appelée Connexion par défaut. Ce qui se passe, c'est qu'une fois que vous générez tous ces corden et ce moteur d'identité, il générera une base de données pour vous au premier lancement. Très bien, sur cette base de données sera généré en fonction des spécifications mises en place dans la connexion par défaut afin que nous puissions aller à une solution. Explorateur sur Jetez un oeil au fichier de configuration Web C'est la configuration Web à la dernière ici qui est au niveau du projet. Il y en a un autre ici dans le membre de vue qui n'est pas celui que vous êtes à regarder. Donc, le dernier fichier de configuration Web qui est dans le projet va aller les deux du projet. Il aura sous la section des chaînes de connexion à la ligne 12. Il peut très, mais vous voyez notre chaîne de connexion ici avec le nom de connexion par défaut. Et si vous jetez un oeil à ce qui est dans la valeur de chaîne de connexion, vous voyez, il a une valeur de recherche silencieuse et
unique là sur ce qu'il fait est de créer une base de données qui a le même nom que votre projet. Andi. Il l'utilisera comme moteur pour vos fonctions d'identité. Si je jette un coup d'oeil à l'explorateur de serveur, je vois qu'en fait j'ai un ensemble de base de données de connexion par défaut et dans la gestion de
l'école de support . Et tu vois qu'il y a tout sur ces tables, non ? Il a un certain nombre de tables. Andi. Je parie quelques tables après. Mais ça ne me dérange pas. Tu devrais voir au moins ça. Mais ce n'est pas nécessairement ce qui est souhaité parce que nous avons déjà travaillé sur notre base de données. Nous en sommes à ce stade parce que nous faisons d'abord la base de données, NBC cinq développements. Donc, effet, en fait, ce qui devrait être utilisé tuyau d'orteil Nos tables d'identité devraient être notre base de données que nous sommes venus ce feu avec qui est logé dans la gestion de l'école sur un carré entités Devi chaîne de connexion. Et si nous regardons cette chaîne de connexion, nous voyons qu'il est en effet et en fait, pointant vers la base de données dans notre BB local appelé gestion scolaire Devi, c'est la base de données que nous voulons vraiment utiliser toe house tous nos utilisateurs ou l'authentification de l'utilisateur sur les différents festin de l'utilisateur Hung Shin. D' accord, donc la première chose que tu veux faire est de changer là où ça pointe, et j'ai déjà cette ligne hors cour. J' ai fait ça. Tout va bien. Je vais vous accompagner à travers ça. Donc je commente juste cette ligne sur le commentaire de pistolet cette ligne sur, je vais vous guider à travers les changements que j'ai faits. J' ai tout sorti après la source de données. Ensuite, je l'ai remplacé par les valeurs provenant de la source de données ici. J' ai donc regardé dans mes entités chaîne de connexion Onda défiler jusqu'à ce que j'ai vu la source de données. Donc, nous avons une connexion. String est égal orteil et ensuite nous avons la source de données sur. Ensuite, j'ai tout pris ici de base de données locale Désolé. Jusqu' à la dernière. Je ne pense pas que tu aies besoin de tout, mais juste pour te donner un peu de clarté. Ensuite, j'ai utilisé cette valeur et je l'ai collée ici dans la source de données juste ici. Donc, au moins les deux cherchent au même point. Et puis vous allez probablement demander. Alors pourquoi ne pas simplement changer la chaîne de connexion qui est référencée dans notre
modèle d'identité ? Maintenant, le problème avec cela est que nous utilisons l'entité, framework et les identités ne jouent pas bien avec cette saveur hors cadre d'entité, donc cela vous donnera réellement une erreur. Si vous essayez de remplacer la chaîne de connexion utilisée par le modèle d'identité, vous pouvez l'essayer et voir l'erreur par vous-même. Et si tu as eu du succès avec ça,
ça irait à l'encontre de ce que je vois. Laissez-moi une ligne et faites-moi savoir comment nous pouvons en discuter. Mais mon truc est, je viens de garder la connexion par défaut. Je pourrais toujours renommer ses bottes. Je dois m'assurer que beaucoup est une chaîne de connexion ici dans ce fichier de conflit sur. Ensuite, j'ai changé la valeur dans la connexion String 2.2, mon huit abysses. Maintenant, après avoir fait cela une fois que vous passez en mode débogage, il sera alors une recherche pour n'importe quelle base de données. Donc, dans ce cas, comme il n'existait pas, il a réellement créé cette base de données à l'époque. Ensuite, ce qu'il fera si la base de données est téléphone, ce
qui sera dans ce cas est d'aller de l'avant et de générer ces tables. Donc, si je regarde en arrière dans l'explorateur de serveur et regarde toutes les tables que vous voyez que je sais avoir toutes ces tables créées ici. Et si je regarde à l'intérieur s étant que les utilisateurs en cliquant avec le bouton droit de la souris et en regardant les données, je vais voir que l'utilisateur que je viens de créer est juste ici. Le i d ressemble un peu à un mot parce que nous sommes probablement habitués à cette implémentation automatique. C' est ce que vous appelez une idée géo bonne ou très unique. Je dévalue. D' accord, on a l'e-mail. Idris Onda. Nous avons quelques chutes est. Mais regarde ça. Regardez le mot de passe. Ce n'est pas seulement un passeur, mais il a un mot de passe Hash. Regardez-le. Jetez un coup d'oeil à ça. Il est toujours une bonne pratique de crypter votre mot de passe de sorte que si quelqu'un par un coup de chance a pu regarder votre base de données et regarder le rapport des utilisateurs. Autant qu'ils peuvent voir l'adresse e-mail, ils ne devraient jamais être en mesure de déterminer quel est ce mot de passe. Si vous regardez ce qui apparaît dans cette info-bulle, vous voyez qu'il s'agit d'une valeur complète de ce mot de passe. C' est complètement incompréhensible pour un être humain. D' accord, on. Ensuite, ils ont quelques autres Carlos par défaut, qui vont dans vous voyez,
le nom d'utilisateur est automatiquement défini sur quelle que soit l'adresse e-mail est. Très bien, sorte que obtient pour chaque utilisateur que vous créez, vous voyez qu'ils ont également la prise en charge des règles. Je n'ai pas de règles. Revenons maintenant à notre utilisateur d'application modèle. Maintenant, le défi avec ce tribunal généré automatiquement est qu'il ne capture pas nécessairement toutes
les données que nous voulons capturer en fonction de notre contexte. Donc, par
exemple, je fais un système de gestion scolaire. Si j'avais des utilisateurs,
je vais certainement avoir besoin de plus que l'e-mail, adresse et le mot de passe pour mes utilisateurs. Je vais probablement vouloir date de naissance pour mes élèves et ceux d'hiver sur une robe pour mes professeurs. Je vais vouloir des informations supplémentaires. Très bien, donc nous devons être capables de modifier notre contexte. Notre modèle qui régit ce à quoi ressemble un utilisateur orteil notre application ? Non. Il y a quelques changements qui devront être faits sur le 1er 1 est avec l'application utilisateur. Donc nous voulons aller de l'avant et à la propriété, date de naissance à cette classe pour que je puisse distraire accessoires en studio visuel et pressé deux fois, et cela va générer cette ligne. Je voudrais que cette date hors naissance soit un type de données de date Time sur. Je voudrais que ce soit la date de naissance. Ensuite, je peux juste utiliser ceci, clarifier cela en utilisant le système. Afin d'obtenir notre rappel de jour, vous devez utiliser certaines bibliothèques pour obtenir certains types de classes. Donc, nous savons avoir une nouvelle propriété dans notre utilisateur a appelé hors naissance ou anniversaire. C' est plutôt pour que soit la modification numéro un sous notre ceinture, vous savez, pour ajouter autant de propriétés que vous avez besoin sur, assurez-vous d'utiliser le type de données correct comme vous voyez le besoin orteil lorsque vous stockez les données, car quel que soit le type de données que vous allez utiliser ici et C Sharp va être traduit dans notre SQL pour un stockage ultérieur. Donc soyez très, très délibéré avec vos types de données. L' étape suivante est de faire ce que vous appelez une migration ou une modification à la base de données. Maintenant, nous avons apporté des modifications à la base de données. Nous avons vu que nous avons juste besoin d'aller dans notre SQL Explorer apporter de la table modifiée sur, puis mettre à jour notre DMX E. Le problème ici, cependant, est que, bien que ce CD, un mélange n'a pas été mis à jour pour refléter les nouveaux tableaux à apporter le changement juste comme cela ne signifie pas nécessairement que l'application va savoir quoi
faire . Maintenant, nous devons exécuter une migration et pour ce faire, nous allons devoir nous salir les mains avec notre console, ce
qui signifie que c'est une de ces choses que le clic et la génération. Vous devez écrire un peu de cour ici pour faire ça. Donc, nous allons vouloir écrire un devis, activer les migrations et plus loin sur l'effet les migrations en utilisant ou console gestionnaire de paquets. Je l'ai ici sur le médecin dans ma barre d'outils déjà, mais ensuite, si vous ne l'avez pas. Il y a n'importe où visible. Ensuite, vous pouvez toujours aller aux outils sur. Ensuite, allez à nouveau get package manager, puis vous cliquez simplement sur la console du gestionnaire de paquets, et cela va générer cette console. Alors je suis devenu orteil. J' ai donc effacé ma console de toute erreur désordonnée qui était là. Ensuite, nous nous pencherons sur l'activation des migrations d'abord sur formelles. Donc, nous allons écrire, activer le tibia de mon tibia gris entrer et puis je vais réellement reproduire cette erreur
que nous venons de voir. Donc, cette flèche dit que nous ne pouvons pas avoir une migration se fait dans l'ambiguïté parce que j'
ai plus d'un contexte dans le contexte. Il ne sait pas quel contexte ou quelle connexion à la base de données. Rappelez-vous que nous devions connecter des chaînes comme indiqué par notre conflit Web, car c'était autour d'un. Désolé, tu sais quel conflit on a eu ? Contexte numéro un, Contexte numéro deux Ou plutôt, nous avions le contexte numéro un, contexte DB d'
application ainsi que le contexte numéro deux pour se rappeler qu'il s'agit d'un
contexte de base de données en attente, activer les migrations dit Je ne sais pas sur lequel vous voulez utiliser cette
commande, donc nous devons être un peu plus précis, donc ils vous indiquent ce qu'il faut dire. Ils disent utiliser sur ils disent, pour les deux. Donc, plus d'un contexte a été trouvé pour l'activer pour le contexte db de l'application. Ensuite, nous devons dire activer les migrations pour cela, qu'à cela et puis, si vous le voulez pour le contexte des entités que nous avons besoin pour l'activer pour cela que cela donc je le voudrais sur le contexte db de l'application, puisque c'est celui que nous identifions vraiment comme étant notre contexte de
données de gestion des utilisateurs. Donc, je vais voir ici activer les migrations. Je peux juste appuyer pour voir la dernière femme. Ensuite, je dirai, le nom du type de contexte de
tiret et j'ai juste appuyé sur. Albany a généré cette ligne, et puis je vais juste copier et découper ces parties pour réduire la marge pour le contexte d'
application d'erreur E B et cette appuyez sur Entrée et voir ce qui se passe. Très bien, donc cette opération a peut-être pris un certain temps, mais nous verrons ici qui est terminé et nous avons une nouvelle configuration de fichier que CS et nous avons aussi un petit avertissement ici, disant qu'ils ont détecté que une autre migration a peut-être eu lieu, mais le résultat final est que nous l'avons permis pour notre projet. D' accord, donc la prochaine chose que nous voulons faire, c'est de s'inscrire. Les migrations lors de la migration ressemblent à une modification de la base de données. Vous apportez une modification à la base de données. Dans ce cas, cependant, nous apportons une modification au modèle qui génère la base de données. Ouvert à ce point, nous avons généré des modèles basés sur la base de données. Ces modèles sont générés à partir de la base de données. Dans ce cas, la base de données a été générée sur la base du modèle d'utilisateur d'application, qui hérite de l'utilisateur d'identité, qui est d'où toutes ces tables et colonnes par défaut ont été générées. Nous avons donc modifié le modèle de base. Nous devons donc informer la base de données que le modèle qu'il doit émuler n'est pas mis à jour. C' est un principe dans le développement de la cour d'abord,
nous faisons le développement de base de données d'abord, ce qu'on appelle le premier développement. C' est ainsi que ça se passe. Vous les construisez modèle de base sur, puis vous générez la base de données en fonction de cela. Donc, dans cette situation, nous devons faire savoir à notre base de données que nous avons fait un changement ou que nous allons faire la
migration d'Adam . Donc, je vais ajouter une migration de tiret sur je vais le nommer ajouté naissance a fait. C' est le nom de cette migration que j'enregistre. Donc je vais juste appuyer sur Entrée. Et puis cela est allé aussi à faire Ah, peu d'opération sur quand cela est terminé. Vous voyez que vous auriez obtenu un autre fichier. Et juste pour jeter un oeil à l'endroit où ces fichiers sont stockés, vous avez en fait un nouveau dossier appelé Migrations. Et puis vous voyez toutes ces migrations rapidement y être répertoriées. Donc, chaque fois que vous ajoutez une migration, euh, alors ah, le fichier est généré juste pour garder le camion hors des modifications qui sont faites. La bonne chose à ce sujet est que vous pouvez revenir à une migration spécifique au cas où vous pensez avoir bloqué votre modèle de données ou que vous avez apporté une modification qui était indésirable peut simplement annuler votre migration. J' annulerais les modifications apportées à votre base de données. Donc, cette première méthodologie de code est utile lorsque vous avez affaire à un
projet très dynamique sur le faire. Vous ne savez pas nécessairement ce qu'est votre base de données tant que vous ne développez pas la fonctionnalité. Cela fonctionne donc bien avec une approche plus agile, puis avoir la base de données et construire autour de la base de données. étant dit après que nous avons eu ce feu, la dernière chose que nous devons faire est de mettre à jour la mise à jour des services de base de données, planquer la base de données, puis d'appuyer sur Entrée. D' accord, et puis on a un peu de scène Burbage qu'on peut voir. Qu' est-ce que Daschle Toby espace verbaux sur qui nous montrerait toutes les instructions SQL
appliquées à la base de données cible signifiant n'importe quelle instruction aurait dû être utilisée pour moi ce changement et ajouter cette colonne. Mais le résultat final est que nous avons vu ou lu l'écriture, donc nous pouvons supposer que nous n'avons pas d'erreurs. Et puis nous pouvons toujours retourner à notre explorateur de serveur et rafraîchir notre table et voilà ! Il y a un anniversaire. Il a été ajouté à notre table afin que vous puissiez le faire avec autant d'autres colonnes que vous le souhaitez. J' utilise juste l'anniversaire aujourd'hui comme un exemple rapide. Encore une fois, vous ajoutez simplement votre colonne ici ou comme une propriété plutôt sur. Ensuite, vous exécutez une migration. génial, c'est que vous avez déjà activé les migrations, sorte que vous n'avez pas besoin de passer cette étape à nouveau. Ce qui se passe ici après, c'est que chaque fois que vous apportez une modification, vous devez ajouter une migration jusqu'à ce que ce soit un nom. Ce qui a été fait sur la migration. Ensuite, vous êtes sur la commande de mise à jour sur qui gardera le suivi de toutes vos modifications au fur et à mesure que vous allez car vous savez que votre projet peut l'étendre. Mon contrat, vos besoins changent. Vous devez être dynamique frère avec ce que vous stockez en tant qu'informations utilisateur. est ainsi que vous procédez à la personnalisation de ce modèle d'identité à ce dont vous pourriez avoir besoin
pour compléter votre défense. Non, nous avons environ deux étapes de plus et ensuite nous pouvons dire que cela est relativement terminé. Les faits que vous avez ajoutés ceci à la base de données ne changent pas la vue. Alors rappelez-vous, bien que nous mettions à jour le modèle, nous devons quand même modifier notre point de vue pour être en mesure de recueillir ces informations et il y a quelques étapes
supplémentaires à franchir pour y parvenir. Donc, tout d'abord, nous devons comprendre où ce qui est stocké. Rappelez-vous donc que toutes les vues sont stockées dans un dossier de vues dans un dossier qui correspond au contrôleur auquel il est lié. Nous avons donc le contrôleur de compte pour l'authentification de l'utilisateur. Donc, nous avons le dossier de vues de cônes pour toutes les vues liées à cela. Et puis nous avons ou enregistrer la page maintenant ou enregistrer la page est ce qui nous a demandé le
nom d'utilisateur ,
qui, qui, en d'autres termes, serait l'e-mail sur le mot de passe, puis il Comme pour confirmer le mot de passe. Comme vous le voyez, il y a une configuration, un cordon généré à l'arrière qui nous donne la comparaison entre le mot de passe et le pasteur confirmé avant qu'il accepte réellement ces données. Vous pouvez essayer d'avoir manqué beaucoup de mots de passe et voir ce message de validation qui revient . Et rappelez-vous que ça doit être validé, mademoiselle, ça reviendra en haut ou le plateau reviendrait ici. Donc, ce que nous voulons faire est d'ajouter la date de naissance comme un champ. Donc, j'ai déjà un email. Je voudrais probablement sélectionner ou collecter la date de naissance juste après les e-mails. Je peux nous changer la date de naissance à la date de naissance, mais vous remarquerez qu'il n'y a pas de date de naissance à venir dans l'intelligence parce que notre modèle ne sait rien sur la date de naissance, donc je vais juste le mettre là, et nous voyons qu'il a une ligne rouge parce que notre modèle une fois de plus ne sait pas quel anniversaire il est. Si on regarde ce qu'est le modèle, on verra. Une autre nouvelle construction continue en cours d'introduction, appelée un modèle de vue. Donc, c'est vraiment juste un modèle comme n'importe quelle autre classe que nous avons vu. C' est juste que le modèle de vue, les principaux modèles hors vue, est que vous, le développeur, pouvez réellement personnaliser une classe qui vous aide à ajouter votre propre date, annotations et validations et donc sur. Et puis vous le transmettez dans la base de données, ou beaucoup sur le modèle à volonté. Je devrais faire un tutoriel entièrement différent sur ce modèle de vue, point de vue et perspective. Mais nous allons juste bières à travers celui-ci, et j'espère que vous connectez les points. Sinon, vous pouvez toujours regarder cette vidéo. Nous devons donc modifier notre modèle de vue afin que la page connaisse la date de naissance. Donc, si nous contrôlons juste et cliquez sur la vue Registre, modèle sera navigué vers elle. Andi, il est vraiment mis dans un fichier appelé un cône pour voir les modèles dans l'Explorateur de solutions. Si nous allons dans les modèles verront que nous avons, Ah, modèles
à vue coned, accord. Et puis si nous ouvrons ce fichier verra que nous avons un bon nombre de modèles de vue de modèle plutôt que ce genre hors ont les mêmes noms que certains hors des vues que vous avez vues dans le
contrôleur de cônes A . Très bien, disons un modèle de vue de cordon de vérification. Vous avez vérifié la vue du cordon. Vous avez oublié le modèle de vue. Si vous regardez dans la solution. Xperia ont oublié les vues de mot de passe sont donc lus. Essentiellement, un modèle de vue est plus d'une classe hors type spécifique que vous créez et vous pouvez configurer vos données et vos notations qui le feront. Et vous voyez qu'il ya beaucoup d'annotations de données qui avec la validation et ce qui est affiché sur qui vous donne un plus grand contrôle sur la façon dont vous générez votre vue sur ce que vous affichez sur elle vs la vue Venant le modèle revenant de la base de données où vous devez travailler avec ce que vous obtenez une sorte d'ambiance. Donc, c'est un moyen beaucoup plus flexible pour vous, c'est un peu plus de travail, mais c'est un moyen flexible pour vous de gérer vos vues. Donc, si nous regardons notre modèle de vue de registre verra que cela est nécessaire. C' est une adresse e-mail. Affiche les e-mails. Nous savons tous à partir de notre vidéo d'annotations de données que nous pouvons changer ce qui est affiché ici. D' accord. Adresse e-mail slash nom d'utilisateur car ils doublent. Très bien, donc je peux voir même juste le nom d'utilisateur. Et cela changerait cet affichage sur. Nous avons l'e-mail de la propriété. Donc, ce que je dois faire pour que ce modèle de vue à date de naissance connaisse est ici comme une propriété, donc je vais descendre. Donc je vais rendre la date de naissance obligatoire. Donc je vais voir que vous avez besoin. Je vais spécifier les types de données. Donc, vous en avez quelques par défaut comme ceci. C' est un attribut email juste. Mais celui-ci, je vais devoir utiliser mon type de données. Je pense que ce sont le type de données de Denham, puis ouvrir et fermer les parenthèses et à l'intérieur de ces grossesses en tant que paramètres, j'étais un type de données point date heure et vous voyez, ces grossesses en tant que paramètres,
j'étais un type de données point date heure et vous voyez,
ils en ont pas mal à venir dans l'intelligence. Donc, vous avez tous ceux que vous pouvez utiliser si vous avez besoin d'ajouter ce genre d'orteil de validation
quelle que soit la sensation d'orteil durable mis en place. Donc, le type de données doit être de type désactivé. L' heure sur l'écran sera qu'il est hors naissance une fois de plus. C' est là que le nom d'affichage entre en jeu. Parce que j'appelle vraiment cette date de naissance. Donc, il est éteint. Tapez le. Temps sur elle est battement de naissance etan une fois de plus après inclure la bibliothèque pour la journée, qui utilise le système. Maintenant, après avoir fait ça, la compagnie aérienne va partir parce que non, notre modèle sait quel anniversaire il est. Alors. La dernière pièce de ce puzzle est de modifier le contrôleur de compte dans notre
option d'hôte de registre où il est en train de charger notre modèle à envoyer à la base de données. Donc, nous disons que l'utilisateur loin est égal à un nouvel utilisateur d'application, rappelez-vous d'où vient l'utilisateur d'application. C' est la classe que nous venons d'ajouter Birthdate à l'utilisateur de l'application anniversaire il. Donc, nous avons besoin d'aller mises à jour ce modèle de création discrétion sur l'objet hors
utilisateur de l'application pour voir le nom d'utilisateur e-mail sur. Puis Isler l'a ajouté. Donc c'est ce que ce serait. Mais nous ne voulons pas que ce soit un temps, mais non, nous allons juste l'ajouter et dire la naissance. Il est égal orteil modèle dot dates de naissance. Alors rappelez-vous que veut l'option de poste. Une fois que nous obtenons la vue et puis
il est soumis, il retourne son action post. La première action reçoit alors sur l'offre d'objet. Distorb you model appelé Model on Dans ce modèle de vue de registre ou d'objet de bras de
modèle appelé Model, nous utilisons les données correspondantes sent donc Phil a écrit ces propriétés, donc cela signifie que je pourrais facilement ajouter un autre champ ici et appeler le nom d'utilisateur. Et puis, au lieu d'utiliser l'adresse e-mail pour le nom de la femme et le nom d'utilisateur, nous pouvons dire le nom d'utilisateur de point modèle après avoir ajouté sur les manuels scolaires appropriés ou la section de collection pour le nom d'utilisateur. Donc, quelles que soient les modifications que vous allez apporter à votre utilisateur d'application le modèle. Vous devez également le faire à votre modèle de vue de registre, puis la vue de registre afin d'avoir la synchronicité là,
puis enfin ou le contrôleur de compte sur tout désactivé. Cela ne peut pas être fait sans effectuer ces étapes de migration. Donc, je vais en fait dans les notes à droite les étapes vers remplir ou terminer toutes ces tâches. Pas à pas. Si vous suivez ces étapes, vous ne pouvez pas laisser de pierre inchangée. Donc, pour conclure cela, nous
assurons que les changements que nous avons fait notre réflexion dans la fonctionnalité donc une
fois de plus j'ai fait un changement des annotations. J' ai dit, même si la justice est un nom, je ne veux pas nous utiliser. Aujourd'hui, nous avons la même adresse e-mail ou nom d'utilisateur. Si j'essaie de m'inscrire, alors nous aurons quelque chose sur la date de naissance. Se sentir nécessaire parce que nous sorte de cette annotation bit sur les mots de passe ne font pas grand-chose, parce qu'il ya aussi généré tribunal ou politiciens qui gouvernent cela. Donc toutes ces choses sont en place, la date de naissance, vraiment et vraiment vous voulez utiliser un et un sélecteur ici. Vous ne voulez pas avoir la date de naissance, juste être un champ de texte libre autant que c'est une date heure, et il n'acceptera pas cela. Mais alors les utilisateurs essaieront de taper la date en fonction de la attente. Ils pensent que je l'ai fait devrait locale. Certains disent des mois d'année, il y a des gens qui disent l'année des mois. Certains disent que les mois année essentiellement Citrus, Citrus, donc vous voulez utiliser une coupe dans l'image et forcer la norme à partir d'ici autant que vous le pouvez. Mais je n'irai pas là-dedans, Trent. Non, je vais juste. Vierge Marie. Un peu d'enchères aléatoires. Andi, j'utiliserai un mot de passe pour tester son mot de passe là où ils ne savent pas que tu peux utiliser le théâtre. Les annotations régissent en fait tout dépouillé. Ces mots de passe sont je pense que c'est un manque beaucoup. En outre, au niveau métrique, il s'agit d'une inadéquation. Donc attaquer un posturing, puis appuyez sur registre. Donc, il est en fait cliquez enregistrer et voir ce qui se passe sur. Alors ça nous donne la norme à propos de ce bâtard. Laisse-moi essayer encore une fois. Test. Donc la posture qu'il est. Capital T capital, test
P, mot de passe un. Bon, donc on a au moins un chiffre sur. Nous avons au moins une majuscule. Je vous en donne deux pour qu'on n'ait pas de problème. Non. D' accord. Et nous voyons que nous avons progressé au-delà de ce point de contrôle. Si nous jetons un coup d'oeil dans notre base de données, je vais rapidement faire apparaître ou solution Explorer,
explorer nos tables dans nos bases de données, puis des tables entières, et nous regardons les données dans les utilisateurs SB Net et là nous l'avons. Nous avons l'utilisateur qui a été créé plus tôt, et il a obtenu une date de naissance très générique parce que ce champ d'anniversaire ne peut pas être pas que nous l'avons spécifié dans notre conception de base de données. Donc, ce n'est pas le savoir. Et donc tu as une date de naissance de la Vierge Marie. Aussi, nous voyons ici que celui que nous venons de créer a réellement eu l'anniversaire que nous avons mis en place. Très bien, donc ce sont des choses que vous pouvez faire pour vous assurer que vous capturez tous les
champs requis en fonction de votre contexte et de votre application. Onda personnaliser la vitesse sur son moteur d'identité utilisateur. Très bien, alors merci d'avoir regardé les gars. J' espère que vous apprendrez une fois de plus verrouillé. Si vous n'étiez pas sûr de quoi que ce soit, laissez-moi une ligne dans les commentaires sur je serai sûr de revenir vers vous le plus rapidement possible. Dans la vidéo suivante. Nous allons voir comment nous pouvons aller à la fois en limitant l'accès à certaines parties
de de
14. Autoriser la gestion utilisateur Web: les gars, bienvenue à ce tutoriel aujourd'hui. Nous examinerons toute la semaine et mondiale limitant l'accès à certaines parties de notre site . Non, ouvert à ce point. Je suis sûr que vous comprenez que le contrôleur contrôle littéralement tous les contrôles cités des
flux de choses. Tout ce que vous demandez à voir, qui étaient sous ce que nous appelons littéralement de vous va être recherché et
rendu plus tard par ou contrôleurs. Chaque requête passera par le contrôleur. Andi. Il laissera les résultats. Ce que nous voulons examiner, c'est restreindre ce que quelqu'un ne peut voir. Ok, donc aujourd'hui va utiliser ce cours est contrôleur comme notre cochon d'Inde. Comme c'était le cas. Ensuite, nous disséquerons ce que nous pouvons mettre dans le contrôle de remorquage. Qui peut voir quoi ? Non. La première chose que je veux souligner est une nouvelle donnée sur la notation que vous avez vu dans le contrôleur de compte appelé autorisé. L' autorisation signifie que vous ne pouvez pas accéder à quoi que ce soit à l'intérieur de ce contrôleur, sauf si vous êtes autorisé ou par extension, authentifié, authentifié, ce qui signifie que vous vous êtes connecté à l'application et que vous êtes identifié comme personne autorisée. En bref, si je veux tout restreindre à l'intérieur de mes cours. Contrôleur. Ce qui signifie que vous ne pouvez pas afficher la liste. Bien sûr, vous
ne pouvez pas être le détail d'un cours sur lequel vous pouvez créer un cours. Vous pouvez modifier ou effectuer n'importe quelle opération. En plus de tout ce que vous avez ajouté au contrôleur, alors je n'ai besoin que juste au-dessus de la déclaration du contrôleur. Droit Ouvrez les crochets sur le mot autorisé, et vous pouvez toujours passer le curseur sur elle se termine et voir qu'il est. Il spécifie qu'un contrôleur notre action est limitée orteil seulement les personnes qui répondent à l' exigence
d'autorisation. Et dans ce cas, vous devez être aimé étant pour être compté comme autorisé. Donc, si nous faisons ça et puis nous courons sur une tentative à l'orteil de Bro, quoi que ce soit à l'intérieur du contrôleur pour les cours, alors nous devrions être redirigés vers la pêche forestière. Et on va essayer ça. Non. Dans notre dernière vidéo, nous avons testé la fonctionnalité d'inscription et de connexion sur laquelle nous avons vu qu'ils fonctionnent. Nous précisons simplement que les cours devraient nécessiter une certaine autorisation avant d'accorder l'accès, qui signifie que ce bouton, qui devrait conduire à des cours, devrait m'empêcher de continuer. Et mettons ça à l'épreuve. Alors s'il vous plaît en savoir plus sur, alors voila ! Je ne suis pas obligé de me connecter. Et puis si je dis lugging en utilisant ces informations utilisateur existantes, alors je serai redirigé vers le discours d'index des cours. Je peux rentrer chez moi pendant toute la durée que je suis aimée. Je peux cliquer, en savoir plus sur l'aller de l'avant sans aucun obstacle. D' accord. Et puis une fois que je suis là, rappelez-vous que l'autorisation était sur tout le contrôleur. Donc, une fois que
je suis autorisé, je peux le savoir et supprimer et afficher les détails et faire toutes les choses merveilleuses que je
serais autorisé à faire en tant que personne autorisée. Je comprends de fermer la session, et ensuite nous poursuivrons nos expériences. Et vous voyez qu'après avoir déconnecté, il m'a déplacé automatiquement à partir de la page restée orteil semble que cela ne se soucie pas vraiment si j'accès ne sont pas ainsi pour ou contrôleur étudiants. Nous voulons également autoriser parce qu'ils ne veulent pas que tout le monde puisse simplement
entrer dans le système et voir sur la suppression et la modification, etc. Mais alors je veux lever la restriction sur la vue pour la liste des étudiants, donc tout est nécessite une autorisation. Mais je veux cette action particulière. Peut-être d'autres aussi. Mais dans cette situation, ce particulier peut être vu sans avoir l'autorisation appropriée. Il y a donc un autre attribut appelé Hello Anonymous, qui, si vous lisez l'info-bulle, remplace. L' autorisation attribue l'auteur comme un hommage à son global. C' est le contrôleur puissant Overlord qui a la réponse. Mais là où il y a un peu
anonyme, dit, OK, je vais faire une exception pour celui-ci. Vous n'avez pas besoin d'être autorisé pour celui-là, accord, donc vous pouvez l'ajouter à l'index. Je veux restreindre la création d'un étudiant et l'édition d'un étudiant et la suppression d'un étudiant par un autre utilisateur enregistré. Alors je les laisse tranquille. Alors on peut voir si ça marche. D' accord, donc nous ne sommes pas amoureux été, et ensuite nous voulons aller voir nos étudiants, donc je vais à nos étudiants sur. Ensuite, nous voyons bien, il charge, certains n'aiment toujours pas. Je suis capable de tous les étudiants de frère. Cependant, quand j'ai essayé de créer une nouvelle édition ou quelques détails et d'ouvrir tous ces dans un haut différent, afin que nous puissions voir les différents résultats. Vous voyez
ceci, c'est créer son obligeance de me connecter. Celle-là est là. Ça me demande de me connecter. Et celui-là était pour les détails. Ça me demande de m'accrocher. Donc, vous voyez, bien que nous autorisons l'ensemble du contrôleur, nous pouvons Bonjour accès anonyme vues articulaires tope que, vous savez, si la personne n'aime pas être d'accord, Enfin vous laisser voir le de l'information. Mais pour aller plus loin, nous avons besoin que vous soyez autorisé. Vous pouvez également ajouter ceci autorisé à part pour tuer nos vues. Si c'est un cas où vous avez la manette et que vous voulez tout cela, Toby a ouvert tout le monde sauf pour une ou deux musique et juste à cet auteur comme attributs orteil
directement cette action dans votre manette. Donc, au lieu d'autoriser anonyme, vous autoriseriez juste ici au-dessus de cette action, ce qui limiterait alors cette accessibilité des actions. J' espère que vous avez une valeur de téléphone dans cette vidéo. Dans la prochaine vidéo, nous parlerons de la restreindre en fonction des règles et de modifier les options
disponibles sur la vue lorsque la personne est autorisée par opposition lorsqu'elle n'est pas
autorisée ou lorsqu' il s'agit d'une règle particulière par opposition à ce qu'elle ne le soit pas. Très bien, alors merci de l'avoir vu et à la prochaine fois.
15. Ajouter des rôles et des autorisations: Hé, les gars. Dans notre dernière vidéo, nous étions en train de mettre en place l'authentification de l'utilisateur sur dans cette vidéo, nous allons examiner la mise en place de règles son busto contrôle plus poussé. Qui peut accéder au blanc ? Non, il y a quelques choses que nous devons faire. Les règles seraient déjà activées en raison du fait que nous avons des cônes utilisateur individuels sur Nous avons déjà configuré la base de données pour l'authentification des utilisateurs. . Donc, nous avons juste besoin d'avoir quelques ajustements supplémentaires sur. Nous obtiendrons nos règles, séparation des
bêtes ou des rouleaux en tact dans notre application. Ok, donc nous allons commencer le voyage dans notre Stipe de classe sur Depuis la dernière vidéo, j'ai effectivement opéré à la communauté de studio visuel supplémentaire 2090. Donc, l'interface peut regarder la différence au fur et à mesure que je vais, mais essentiellement, c'est à peu près la même chose que 2017 qui est ce que nous avons commencé ce cours Siris dans. Donc, nous commençons par démarrer. Ce que je veux faire est en fait de créer quelques règles pour commencer. Donc, dans le contexte off, notre système de gestion scolaire aura probablement un administrateur un principe sur Voyons ah utilisateur, notre professeur. Nous voulons donc au moins trois règles pour commencer. Donc, ce que je vais faire est de définir une fonction ici au début de la classe qui
va réellement aller de l'avant et créer ces règles dès que l'application démarrera, puisque c'est pour cela que cette classe ici sert. Donc, je vais juste aller de l'avant et je vais traiter une fonction qui vous crée, Rose et les utilisateurs sur ce que je vais faire ici, tout d'abord, est d'inclure mon contexte BD d'application. Rappelez-vous que le contexte BB d'application aurait été défini dans notre modèle d'identité ici. Et cela représente cette connexion directe que nous appelons la chute de la connexion à notre base de données qui se bloque sur les tables bêtes utilisateur. Donc ici, la connexion
par défaut est le roi droit vers la base de données. Donc, ce que nous voulons faire est d'initialiser un objet hors de cela ici parce que ce que nous voulons faire est faire quelques opérations d'abeilles de données. Donc, nous devons inclure notre application bebe contexte et j'ai eu une photo de contexte Z et puis vous voyez que cela nous fait, vous devez inclure quelque chose. Donc un beau requin gardien. C' est le contrôle et le point et il nous montrera ce qui s'est passé. Vous ne pouvez pas écrire cela et ensuite nous voyons dans votre application des contextes de prélèvement. Ou peut-être que vous êtes ce genre de développeur de bar. Sweet verrait toujours un feu ici. Notre contexte profond était nouvelle application Devi contexte Suivant, nous voulons permettre aux gestionnaires dans la ferme hors du gestionnaire de rouleau sur le gestionnaire d'utilisateurs. Donc, je vais juste initialiser un objet appelé il roulant Manager Onda Je vais voir cela est égal à nouveau gestionnaire de règles et je peux juste voir le contrôle qui va me promettre a encore besoin d'être installé inclus Désolé deuxième juste percenter et aller Et je veux que ça ait un rôle d'identité Nous allons juste exiger une autre inclusion si contrôlée que percenter encore une fois. Donc, au fur et à mesure, vous pouvez simplement aller de l'avant et inclure toutes les bibliothèques qui doivent être installées sur ce . Ceci est juste une partie de l'initialisation, donc vous pouvez simplement aller de l'avant et taper avec moi règle d'identité frond magasin de règles une fois de plus sur tout cela dans le contexte, hors contexte. Donc, essentiellement, nous initialisons un gestionnaire de rôle sur nous transmettons la règle d'identité sur DWI. Il a été initialisé et constructeur passé le magasin bro moyen sans entité, rôle sur le punt, la valeur hors contexte ici passant la base de données que ce gestionnaire de rôle devrait être initialisé dans le contexte off je vais faire quelque chose de similaire pour vous êtes moniteur utilisateur Donc ce duplicate que neuf et juste changer les mots doux. Donc, ce sera le gestionnaire d'utilisateurs. Ce n'est pas le gestionnaire d'utilisateurs Soldier a au moins. Et cela suppose que mettre en place ce serait l'utilisateur de l'application et ce serait le magasin de l'utilisateur une fois de plus, le
cas sur l'utilisateur sur le contexte pour moi est la scène. Non, nous devons vraiment le mettre en œuvre. Donc, ce que je suis sur le point de faire est d'écrire sur sa déclaration pour dire que éphémère existe déjà. Si je roule, n'existe pas, puis créé sur Dwell. Évidemment, il ne le créerait pas s'il existe déjà. Je vais en fait créer un utilisateur admin initialement. Donc, si et je vais dire que pas sur le gestionnaire de droll me permet de trouver ou d'exécuter
certaines opérations spécifiques au rôle afin que je puisse voir la règle existe sur le dysfonctionnement va effectivement aller dans la base de données des règles sur la route stable. Désolé et vérifiez si une règle existe sous ce nom. Alors, ici. Eh bien, mon juteux s'il y a un rôle qui existe avec le nom admin. Mais dans ce cas, je prends, sinon je veux voir s'il n'y a pas d'administrateur de règle, Alors faites ceci. Et ce que je veux faire, c'est créer la première règle. Donc, je vais juste initialiser quelque chose hors règle d'identité de type. Et puis je suis allé donner cet objet de rôle et le nom, donc l'idée serait implicite une fois qu'elle entrera dans la base de données. Mais je vais lui donner le nom sur le nom que je vais lui donner. C' est ainsi que aan den ? Je vais juste voir un gestionnaire de règles aller de l'avant et créer ce rôle. Donc Roll Manager a une fois de plus quelques opérations spécifiques de rôle qui nous aident à des
règles médicalement stables. Donc, nous n'avons pas à faire beaucoup de travail pour obtenir des données dans et hors de la stable comme avec
les tables régulières . Une fois qu'il s'agit d'un utilisateur, notre table de règles telle qu'elle aurait été générée, nous avons certaines opérations qui nous sont données par son différent plus qui nous aident à manipuler ces tables. Donc je sais que j'ai le rôle. Je suis en fait juste allé pour créer un utilisateur hors de l'utilisateur mais votre fils. Et je vais faire mon objet initialiser votre fils, ce qui dirait que l'utilisateur est nouveau. Donc tu aurais pu le faire ici. Il aurait pu juste faire les accolades ici. Et puis ce bâtiment Namie a été admis. Certains le vivent dans les deux sens. Juste au cas où, vous
entendez de voir pointu. Tu veux voir comment Opie fonctionne là-bas ? Certains nous le collons autour de cela donc je vais donner à ce genou utilisateur et juste le donner signifierait garder simple de la part de l'e-mail. Désolé dit d'être je veux dire au message et puis g gestion de l'école pour com. Bon,alors, alors, ce que nous ne serons pas en mesure de faire, c'est juste de définir le mot de passe directement ici. Au moins, je ne veux pas parce que je voudrais vraiment voir bar Posser est l'égalité, et je vais juste dire mot de passe juste pour garder ça simple. Mais rappelez-vous que notre base de données va réellement ou au moins nos fonctions sont en fait incorrectes. Ce mot de passe avant qu'il soit réellement stocké dans la base de données donc mot de passe est égal à ce mot
simple. Je fais juste ça. Je peux en fait me souvenir, mais c'est très pratique de fait. Je vais de l'avant. Alors je vais voir si notre oui, monsieur, je suis juste que je crée des variables ici est égal à. Et puis voici où le gestionnaire d'utilisateurs entre en jeu parce que tout ce que nous voulons réellement créer un utilisateur. Donc, nous appelons notre moniteur utilisateur, objet, et puis nous voyons créer, mais nous savons que nous pouvons, et puis nous le transmettons. Et si vous regardez la fonction sur la Lazio Serie peut créer un utilisateur sans mot de passe Tout droit. Vous venez de passer dans l'objet hors utilisateur de l'application, ou vous pouvez réellement créer un passe ou un utilisateur avec un mot de passe sur vous passez dans l'objet utilisateur ou l'
application,objet application, utilisateur et quel que soit le mot de passe est sous forme de chaîne. Donc, cette fonction gérerait réellement ce cryptage. Insertion Andi dans les abeilles de données. Donc despotes dans plus objet utilisateur ainsi que ceux un ou mot de passe sur, puis, juste à une vérification sommaire ici pour voir si nos créations, Donc chaque fois que vous créez réellement, effectuer sur entité, framework, action ou fonction. Habituellement, cette fonction retournera une certaine valeur. Donc, le haut de sorte que l'objet utilisateur Voici nous sommes objet ici aura effectivement une valeur afin que nous puissions nous voir point de fer réussi. Très bien, donc il retournera un booléen s'il a réussi, Il renvoie également des trucs de liste. Flèches. Donc, je suppose que si c'est tombe, alors vous obtiendrez au moins des erreurs. Si c'est vrai, alors évidemment quoi que ce soit. Tu as essayé de travailler. Donc, si cette opération a été réussie, alors nous pouvons voir les résultats loin est égal à ou en utilisant gestionnaire une fois de plus sur nous voulons ajouter à règle après l'assurance et décider des points utilisateur expérience I d. Onda le rôle qui est de moi ou laissez-moi commencer par le haut. Donc on a vérifié. Tout d'abord, s'il y a un rôle appelé admin dans nos tables de règles. Donc Roll Manager est notre contrat avec nos vieux vole notre à chanter. La règle existe-t-elle ? Oui ou non ? Non. Si ce n'est pas ce qu'il ne serait pas à ce stade. Ensuite, nous voulons First day crée un objet de rôle, puis le remplir avec les données sur. Dans ce cas, vous voulez lui donner le nom admin sur. Ensuite, nous allons de l'avant et créons le rôle de sorte que le rôle doit exister. Ensuite, nous allons de l'avant et crée sur l'utilisateur admin sur. Ensuite, nous donnons à cet utilisateur admin positif, et nous voyons qu'il crée cet utilisateur avec ce passants. Donc, non, nous aurions une annonce. Onda minérale. Nous avons un utilisateur appelé admin. Ce que nous n'avons pas, c'est une association entre notre utilisateur sur le rôle de Douvres. C' est là que cette ligne entre en jeu, où elle est. Si l'utilisateur a été créé avec succès, à droite, et s'il a eu ce feu, alors la règle serait créée avec succès. Si les rôles créés sur l'utilisateur ont été créés, nous voulons voir s'il a été créé avec succès. Ensuite, nous voulons ajouter toe pour régner cet utilisateur sur cette règle. En d'autres termes, non. Nous voulons créer une association entre cet utilisateur I d. Quel que soit l'identifiant de l'utilisateur ? Non, un scientifique. Cet objet parce qu'une fois dans deux amis différents plus, cette opération cet objet est essentiellement mis à jour avec l'idée venant de la base de données sur Avons-nous l'amiral ? Donc, cette fonction va réellement gérer la découverte des deux identifiants en les associant. Non, je pense que tout cela est très important pour l'administrateur, parce que les utilisateurs de Rodman sont sacrément, il n'a généralement pas un très petit nombre d'utilisateurs d'administration. Vous ne continuez pas à créer des utilisateurs Adnan, cependant, pour le directeur ou le superviseur et les enseignants, ce n'est pas si grave. Donc, ce que nous pouvons faire est simplement vérifier si ces règles existent, il est comprendre, pour voir si le rôle de nots dans mon rouleau de noeuds nature existe sur ce temps est allé à la recherche de ce est nouveau professeur. Donc, s'il n'y a pas de règle d'enseignant, alors cela comprend une copie de cette cour ici, alors je vais dans l'espace qu'il y a là et je vais changer le nom de rôle en professeur et là nous l'avons. Donc, une fois de plus sur la première manche comme sur la rédaction de cette cour, aucune hors de ces règles existent. Donc, cela fonctionnera sur créer Admiral et l'utilisateur admin. Cela va exécuter et créer une règle d'enseignant est arrivé. Je vais juste en mettre un de plus pour un superviseur. Elle est très similaire à ce super de Sir Onda superviseur. D' accord. Et je comprends le changement de contrôle et être à construire sur et juste alors sûr que je n'ai pas d'erreurs. droite. Donc, nous n'avons pas d'erreurs. Je sais que nous avons créé tout ça. Ce que nous devons faire est en fait appeler notre fonction dans notre fonction de configuration, qui s'exécute dès que l'application démarre. Son comprendre pour appeler cette fonction, je peux arrêter convaincu qu'ils sont assis là sur puis nous pouvons exécuter et regarder que nos règles se créent. Ok, donc on a une erreur ici. Hum, si vous tombiez jusqu'à ce point dans tous les vainqueurs, rappelez-vous que nous avons modifié les objets utilisateur de l'application. orteils, en fait, ai-je battu la naissance ? D' accord. Par conséquent, lorsque nous créons cet utilisateur et plus, commencez. Désolé. C' est juste dire que nous avons des perles invalides, des
perles, perles, résultats de
temps. Donc, nous devons réparer ça. Donc je vais juste arrêter l'histoire de rapidement. Et ce qu'il faut faire, c'est ajouter huit naissances ici. Anniversaire, il est égal et d'autres temps de battre la mer. Je ne sais pas. Solaire m'allume pour faire une frontale qui utilise le système, et ensuite on pourra essayer ça à nouveau. OK, donc nous voyons que notre application est arrivée avec succès, mais je ne suis pas tout à fait intéressé par ce qui se passe ici, mais rapidement hors du brin. Logan, en tant qu'utilisateur administrateur, qui aurait dû être créé lors du démarrage. Ok, donc nous ne sommes pas entièrement intéressés par ce qui est sur cet écran. Cependant, nous voulons vérifier notre base de données pour voir que nos règles ont été créées. Service petits morceaux de col de l'utérus pour avoir arrêté l'humeur des gens sur le dire ainsi. Données de la table sur. Nous voulons voir à ce que nos enfants de trois ans aient été créés. Andi l'a dit. Donc, nous avons nos trois rouleaux admissibles par leur enseignant sur le respect je ds sur defy goto s étant son utilisateur que nous devrions voir ou utilisateur admin. D' accord. Je ne vois pas le sens, utilisateur. Je vais devoir vérifier ça. Oh, parce que je ne sais pas vraiment pourquoi, euh, on peut revenir à ça. Donc, si l'utilisateur admin n'a pas été créé avec succès et cela signifie que l'association n'a pas été
faite non plus, ce qui se trouverait dans les rôles d'utilisateur, est-ce pas ? Donc il n'y a pas d'association, Donc au moins nous avons ou trois rouleaux avaient moyenne superviseur enseignant sur. Nous avons au moins nous avons aux utilisateurs ici. Non, le truc c'est que si on voulait les associer au moins de l'argent Willy, alors on a juste besoin de notre utilisateur. J' ai téléphoné ici dans cette suite. On a juste besoin de notre rôle. J' ai appelé pour ce problème et on pourrait juste les mettre côte à côte ici manuellement. Ensuite, nous aurions un utilisateur administrateur par rapport à un enseignant par rapport à si cet utilisateur que je d apparaît fois avec deux règles différentes de celles utilisées, il y a ces règles qui ont été assignées . Donc c'est juste un débogage. Que s'est-il passé ? Pourquoi notre administrateur qui n'a pas été créé ? Andi, j'ai une forte suspicion à voir avec un mot de passe de semaine. Mais je vais traiter un peu cette cour. En fait, je suis juste en train de faire ça ici, le jour. Je vais l'exécuter avant les déclarations if, juste pour que je ne puisse pas croire ce qui se passe. C' est comprendre. Définissez un point de debo ici parce qu'il est de voir vous-même crée de l'objet avec succès sur comprendre pour aller de l'avant et appuyez sur exécuter sur DSI Que se passe-t-il ? Bon, donc besoin de démarrer. Nous Fitzherbert a pointé pour la recherche ou objet utilisateur. Nous voyons que nous avons ici. J' ai été sur l'idée est déjà là sur alors je peux passer à travers en utilisant x 11. Nous allons ligne par ligne. J' ai donc votre mot de passe. Et puis nous avons frappé notre fonction ici, qui avait réellement créé cet utilisateur sur ce plâtrage. Donc, après avoir appuyé sur f 11, il ira orteil Si les instructions qui verront alors la création de l'utilisateur a été réussie. Oh, ouais. Donc, si je recommence à essayer, alors il devrait aller dans l'instruction if sur procéder associe l'utilisateur i d pour cet
utilisateur admin au rôle i d.
Donc, je ne suis pas tout à fait sûr pourquoi cela n'a pas fonctionné alors qu'il faisait partie de l'instruction If. Bon, donc notre candidature est en cours cette fois, mais je vais juste arrêter parce que je ne suis pas vraiment intéressé par la concurrence. En ce moment, je vais aller à mes données basées sur les utilisateurs sur DSI. Si mes yeux m'ont trompé ou non, Onda, on
y va. Donc surutilisé il a été créé avec succès, donc cela signifie que je devrais être en mesure de me connecter avec cet utilisateur admin si nous regardons dans l'utilisateur rose et nous avons juste besoin de rafraîchir. Eh bien, je l'ai déjà fait. Mais si vous ne voyez pas l'industrie malade d'abord une requête et que vous voyez que vous avez cet utilisateur d'
association je d et roll idée. Je ne suis pas tout à fait sûr pourquoi le cool n'a pas fonctionné pendant qu'il était dans les déclarations. Mais le fait est que nous ne voulons vraiment pas qu'elle se reproduise. C' est pourquoi nous aurions mis cela dans cette déclaration pour ne se produire que s'il n'y a pas de publicité minérale. Donc ce genre de cours, vous pourriez réellement mettre dans une application. Vous savez, vous déployez pour la première fois sur ce sont des presets. Ils peuvent mettre n'importe quel préréglage que vous souhaitez qu'il se connecte, créer une fonction préréglages créatifs, et simplement appeler la fonction à l'intérieur de cette fonction de configuration. Au début de nous, je sais que nous avons créé avec succès quelques rose et créé à ces utilisateurs en cours. Et il y a, ou ce que nous voulons faire est sur ce est très, très, très introductif pratique pas du tout, mais pour l'exemple mer hors mer, je vais le faire de cette façon. Ce que nous voulons faire est en fait modifier le processus d'inscription pour y inclure des règles. La première chose que je veux faire est d'aller à mes mannequins. Andi, modifie le modèle d'identité. Donc la première chose que je veux faire est de passer aux modèles et de modifier mon compte de vous modèle sur . Trouvez l'envie, M. Model. Je veux ajouter ici les règles d'accommodement des orteils de propriété. Bon, donc je vais juste créer un autre champ requis. Compte tenu de l'année de discipline, les rôles d'utilisateur sur ce sera une chaîne. Je ne veux pas l'appeler utilisateur ou vous noteriez également que dans notre base de données l'e-mail sur le
nom d'utilisateur , j'obtiendrais la même chose. Dans ce cas, ils n'ont pas la même chose. Mais pour chaque précédemment créé, ils ont la même valeur. Donc, ce que je vais faire est d'inclure le nom d'utilisateur comme une propriété lors de l'inscription sur, assurez-vous que nous nous asseyons utiliser l'un de séparément. D' accord, alors je suis juste pour quoi ? Utilisateur nouveau et modifiez cette propriété en utilisateur. Ensuite, nous voulons initialiser notre boîte de liste déroulante pour la vue pour la destruction. Quelques-uns de cette comédie musicale dans mes cônes. Contrôleur Onda, ce qui se passera dans ce contrôleur est que je veux orteil exécuter une requête contre ma table de règles pour voir toutes les règles du tableau sur les présenter comme options de destruction. D' accord, donc la première chose que je veux faire est de créer une propriété pour l'application. Il est le contexte. Rappelez-vous, c'est ce que nous allons louer avec notre base de données sur. Je vais juste l'initialiser. Après avoir fait cela, nous voulons nous assurer que lorsque la personne utilisateur de notre site était le registre sur, nous avons rendu la vue était en fait rendu une liste ou une boîte de liste déroulante avec toutes leurs options . Donc, je suis les règles de vue de la toux simple Bug Darts sous de nombreuses façons de le faire sous sprinted, il a une vue, mais sur un appel d'un select ceci sur ce serait effectivement aller en main le plus tard quand nous commençons à
regarder comment nous associons des fichiers et ont un tout ont laissé tomber les os. Mais dans cette situation, une liste de sélection. Tout d'abord, il faut la source de données, qui serait le contexte des règles qui nous donneraient toutes les règles. Mais la meilleure pratique serait que nous créons les utilisateurs d'administration en dehors des nœuds de boîte, un utilisateur inférieur pour créer ou enregistrer et enregistrer comme et je l'ai été. Alors que je le suis quand je ne le fais pas comme une bonne pratique. En permettant à l'utilisateur de choisir son rôle, nous pouvons toujours, vous savez, explorer pourquoi certaines choses sont juste à propos d'idée aussi. Donc, dans cette situation, je modifierais ma source de données sur exclure les minéraux de l'annonce. Donc, je pensais que les adolescents avaient des minutes. Donc, vous pouvez voir où le nom il n'y a pas continuer à moi et alors cela verrait exclure Advil et ensuite nous pouvons juste mettre sa liste faire repose plus facile sur là. Nous aurions satisfait le tout premier constructeur où vous voyez qu'ils sont neuf et nous sommes sur le point d'en employer un sur les neuf. Ce n'est pas cela avec une liste de sélection. Vous pouvez réellement voir quand il est sélectionné, quelle valeur vous voulez. Donc, je veux un nom de valeur, pas le I d. Sur aussi regarder devrait être affiché sur die. Vous voulez également que le nom soit affiché. Donc, si vous avez déjà travaillé avec une zone de liste déroulante en html, alors vous saurez que vous spécifiez toujours la valeur sur vous spécifiez le texte à afficher. Donc, c'est essentiellement nous le faire. Nous regardons cette liste des objets hors règle de type sur. Nous savons que toute variable ou tout objet plutôt hors type Roisman ont le nom et l'idée. Nous disons donc que nous voulons que le nom soit la valeur sur Nous voulons que le nom soit la valeur affichée . Écrivez également notre faire tout cela avant de retourner la vue Maintenant, dans la vue sur le district comme celui-ci et voir la cour de vous Ce que nous voulons faire est d'inclure une autre section de groupes de formulaire pour notre boîte de liste déroulante nouvellement créée comprend copie en paix que formé groupe sur Ce serait une étiquette quatre et nous pouvons changer cela de mots de passe confirmés au rôle d'utilisateur. Mais quand nous avons aussi un pour utiliser à l'intérieur juste à travers ce deux fois sur que probablement mettre nom
d'utilisateur au-dessus de l'e-mail. D' accord, mais j'ai toujours gagné à l'époque, donc j'ai toujours le nom d'utilisateur Onda. Nous verrons si cette valeur Donc ce serait aussi une zone de texte pour par opposition toe passeur pour les manuels pour notre utilisation. D' accord, et ensuite ne fais pas ici. En fait, nous allons changer cela en rôle d'utilisateur pour l'étiquette, mais nous voulons notre aide HTML pour une liste déroulante. C' est aussi une liste déroulante. Ensuite, nous sélectionnons notre propriété en utilisant la règle mettre tout entre guillemets Onda nous voyons que nous voulons utiliser une liste de sélection sur le chemin utilisent les règles de bugs de vue. Donc, nous convertissons implicitement toutes les valeurs à l'intérieur de vous, mais augmenté dans une liste de sélection . Et vous vous souvenez que c'est ce que nous avons dit ici, voir sur les règles de points est une nouvelle liste de sélection. Donc, cette augmentation il conversion ne devrait pas se sentir compte tenu que nous avons déjà mis dans une
liste de sélection là-bas sur. Ensuite, nous avons juste un métal avant vide qui devrait teck ici de notre destruction Peach. Très bien, donc nous avons modifié le get ou distribué sur le HTML réel. Non, nous devons modifier ce qui se passe quand nous avons posé. Donc, quand un utilisateur vient réellement pour être enregistré leurs certitudes que Nieto affaire ici Tout d'abord, nous n'avons pas besoin de modifier notre utilisation d'un objet pour savoir qu'il ne prend plus de courrier électronique. Mais il prend maintenant l'utiliser parce que nous avons ajouté que la prochaine chose que nous voulons faire est mettre sur une fonction de chant pour dire que les docks de gestionnaire d'utilisateurs point ajoutent à la règle. Donc, nous allons réellement associer cet utilisateur au rôle sur lequel nous nous souviendrions de l' activité
précédente que ce que nous voulons est notre idée d'utilisateur. Donc, point
d'utilisateur i d onda notre règle par nom, que nous obtiendrions à travers le modèle que le rôle d'utilisateur sont donc nous avons un meilleur d'Eric ici. Oh, je suis désolé. J' utilise une attente ici, donc tout ce que j'utilise doit être un évier. Donc, c'est basé sur. On y va. Donc, notre manger utilise leur manager sur. Nous passons l'utilisateur i d parce que l'utilisateur aurait été créé à partir de cette fonction. Appelez si elle a réussi, alors nous nous connecterions automatiquement. Je veux dire, vous pouvez toujours rue le secret toujours déplacer ce signe dans la fonction après la création et l'association hors de l'utilisateur avec le rôle. Et puis tu pourrais réécrire sur la page Andi. De même, si nous après le rendu et l'erreur que ce que nous voudrions faire est réel ou sélectionner la liste parce que lorsque la page se recharge avec les veuves de notre époque sur la boîte de kumble vide pour l'utilisateur d'avoir à s'asseoir et comprendre tenir comme get quelque chose en arrière. Donc, nous voulons recharger le bogue de vue Avec cette liste de sélection telle que allé retourne. Cette vue, il est sait exactement ce que le retour municipal à Ondo afin que nous puissions tester cette Onda assurer que notre application fonctionne très bien. Non, notre demande est en cours. Essayons de s'inscrire à Brand User et voir ce que l'expérience de sa vie. Bon, donc non, nous voyons que nous l'avons utilisé et nous avons utilisé un rôle avec une liste déroulante là-bas. qui prévoit, Pourrait x On pourrait styler ça en utilisant bootstrap Pour moi, il semblait que je suis tombé sur. Ça s'intègre avec les autres. Mais allons-y tout de suite, quelque part pour l'état professeur de test ou, disons, un enseignant sur la garnison email pour voir. J' ai dit, vous savez, il y a une barre oblique en utilisant, donc nous devons modifier ou modéliser. Donc vous teck tout ce truc en l'utilisant. Très bien, donc dans les villages devrait être professeur à l'école venir date de naissance va juste laisser ce mot de passe. Je vais utiliser un simple passer à nouveau, puis utiliser un rôle. Vous remarquez que c'est vide. Quand je vous prends, voyez qu'il a réellement des valeurs excluant admin basé sur la requête que nous avons écrite pour remplir cette zone de liste déroulante. La raison Il y a un espace sanguin, les zones que dans notre froid, nous avons eu un blanc vitesses dans chaque TML sous la forme de ce. Bon, donc c'est ce qu'ils nous ont donné un espace aveugle comme le premier ami par défaut. Donc, nous pouvons revenir en arrière et compléter ou la destruction en sélectionnant un rouleau, a annoncé un professeur. Et puis j'ai pu m'inscrire et il y avait une certaine distance. Recevoir cela en utilisant la combinaison imposteur pour un enseignant. Et si je clique, gère ou clique sur le nom d'utilisateur, vous voyez que vous avez effectivement quelques fonctions générées automatiquement pour l'utilisateur ici. Je n'y reviendrai pas aujourd'hui, mais nous pouvons certainement dire que notre professeur a été créé sur eux. Je veux juste sortir des gens plus rapidement. Sur, nous passons à la base de données et voir règle de surveillance. Cet enseignant a été assigné, donc si je rafraîchis la table de l'utilisateur, alors vous verrez le professeur venir. Donc, nous avons l'enseignant à l'école dot com avec l'e-mail et nous voyons que la voiture à utiliser n'importe quel brouillard venant sur la base des changements que nous avons faits sur. Si je vais à l'utilisateur sur les règles et que nous devrions voir un deuxième rôle ici venir avec les enseignants Heidi et le rôle de l'enseignant, je d. Et voilà. Nous avons donc les profs que j'ai sur. On a la règle du professeur . C' est essentiellement comme ça que vous allez un bateau créant des règles. Sachez que la dernière chose que je veux couvrir dans cette vidéo est comment vous pouvez aller bateau autorisant un contrôleur basé sur la règle. Donc, nous avons eu ce coût en utilisant autorisé à dire que vous êtes incapable d'accéder à certaines choses dans un contrôleur ou l'ensemble du contrôleur. Si vous n'êtes pas autorisé, alors je sais que ce que nous voulons faire est de voir si vous n'êtes pas aimé en vertu d'une règle sur les particules, alors vous n'avez pas accès à ces choses. Maintenant, nous allons voir, par
exemple, nous avons déjà admis avoir déjà enseignants sont généralement ceux qui devraient être à la
recherche des étudiants et de leurs détails. L' administrateur pourrait être le
Guy I t. , donc l'administrateur pourrait ne pas nécessairement être en mesure Teoh accéder à tout cela et que cela peut être un
ajustement loin dans l'incident américain que les hommes de publicité devraient être en mesure de faire tout, mais juste de m'humour pour cela Disons simplement que tout ce qui est à l'intérieur du contrôleur des étudiants ne devrait être accessible aux personnes qui sont dans le rôle d'enseignant. Donc, sur les attributs d'autorisation qui sont déjà ici sur notre contrôleur d'étudiants, je vais juste mettre entre parenthèses ouvertes et fermées sur. Alors je vais voir des rôles. Et puis vous voyez les sens intenses voir des rangées égales. Et puis ce qui s'attend est une force avec les règles qui devraient être en mesure d'accéder. Donc, vous pouvez avoir plusieurs règles ici contre un professeur. Hama. Je veux dire, virgule, autant que vous avez besoin, d'accord, dans ce cas, dans ce cas, parce que nous n'avons qu'à des utilisateurs dans l'un ou l'autre. Oh, je vais juste démontrer avec le professeur contre l'administrateur. Alors repassons à travers ça. Un enseignant est autorisé à accéder à tout ce qui se trouve à l'intérieur de ce contrôleur étudiant. Nous avons déjà une charge anonyme sur l'index, donc cela signifie qu'un administrateur ou personne de chose pas longtemps devrait être avec l'index ESP. Cependant, si quelqu'un qui n'est pas dans la règle de l'enseignant aimé dans nos tentatives autrement d'aller aux détails ou créer ou quoi que ce soit d'autre à l'intérieur de ce contrôleur, alors il devrait échouer. Maintenant, essayons ça. Je sais que l'application est désactivée. J' ai réalisé qu'il y a un bug où si vous êtes en mode débogage et que vous êtes déjà aimé , alors lorsque vous essayez de faire cette opération, cela vous invitera à vous connecter comme si les attributs ASP de l'auteur ne fonctionnaient pas. Donc, pour vous assurer que vous en tirez le meilleur parti, je vous recommande de l'aimer,
essaies-tu de nouveau de vous aimer ? Donc, j'ai adoré et je me connecte sur destry quelques modifications qu'ils ont apportées à la loi en présence où j'ai changé de blog de courriel à nom d'utilisateur comme d'habitude nous avons demandé aux gens de se connecter avec nom
d'utilisateur et mot de passe sur dans la même wien dans la cour. J' ai effectivement mis à jour le gestionnaire de connexion. Donc, c'est dans un troller constant et c'est une fonction post log en avant. Je change le gestionnaire de signature que la signature de mot de passe cesse d'être le modèle points nom d'utilisateur. Donc, j'ai daté le modèle de journalisation, ai le nom d'utilisateur à la place de l'e-mail sur la fonction de signature. Prend en fait le nom d'utilisateur Onda mot de passe. Donc, parce que nous utilisons l'e-mail comme ils utilisent un mope jusqu'à ce que non, parce que nous avons ajouté le nom d'utilisateur comme champ dans notre processus d'inscription, nous voulons nous assurer que nous envoyons avec nom d'utilisateur et mot de passe, ce qui signifie que les deux autres utilisateurs aurait besoin d'être aboli. noms d'utilisateurs difficiles qui ne sont pas l'e-mail Chris et vous avez dit que ce sont quelques changements qui ont fait pour que vous puissiez aller de l'avant et répondre à ces changements. Mais comme il se rapporte aussi à nouveau dans je l'aime juste et rapidement en tant que professeur. Et puis je vais démontrer qu'un enseignant peut aller à tous les élèves, ce qui permet anonyme mais peut aussi aller de l'avant sur Aller à ses détails, le plomb ou créer. Et je suis juste en cliquant sur l'orteil ouvrir ces dans vos onglets pour que je puisse vous montrer que chaque page seigneurs, comme on s'y attendrait puisque cette personne est dans la voiture pour rouler. Non, ce que je vais faire est de me déconnecter en tant que professeur, puis de me connecter en tant qu'utilisateur administrateur. Andi est maintenant monté à des étudiants qui seront seul moi. Mais quand je clique sur créer nouveau, il m'invitera à me connecter parce que ma règle d'administration n'est pas un accès à bas orteil cet âge sur DSO la personne est aimée, mais ils sont invités orteil Blufgan à nouveau parce qu'ils ne sont pas autorisés. C' est donc essentiellement comme ça que vous pouvez global, en utilisant des règles pour contrôler l'accès aux différentes parties de votre application sur la façon dont vous allez naviguer, en
installant des règles et en les personnalisant à votre but. Tout cela est extensible pour différentes personnes ont des exigences différentes, mais c'est à peu près hors de la boîte. Avec un minimum de frais, vous pouvez tirer parti du système de surveillance des règles existant de Microsoft. Eso regarder sur la mer unissent le style.
16. Ajouter un projet à Github: Hé, les gars, dans cette vidéo, nous allons voir comment vous pouvez ajouter vos projets, ce qui serait en studio visuel pour obtenir de l'aide pour les sources centrales. Maintenant get top a été autour depuis un certain temps, comme au moment de cet enregistrement, il fait froid par Microsoft. Il s'agit d'une plateforme de développement orientée vers la promotion de l'open source. open source signifie essentiellement que vous partagez votre code. Vous savez que vous avez un projet à faire. Vous voulez que d'autres personnes y participent, peut-être y ajouter. Tu sais que c'est ce que la guitare favorise sur DSO. utilisant get up, vous pouvez effectivement avoir un endroit sûr à la cour de Syrie ou héberger votre code. Juste au cas où vous auriez des difficultés techniques, votre machine tombe en panne ou quelque chose comme ça. Vous savez que c'est ici dans le code que vous pouvez juste lire. Ne chargez pas tous vos derniers travaux sur continuer. Il effectue également le contrôle de version, ce qui signifie que pour chaque modification que vous faites, vous pouvez réellement archiver cette partie sur. Si quelque chose ne va pas, vous pouvez revenir à la partie vraiment fonctionnelle précédente, donc c'est très flexible. C' est parfait pour une équipe courtisant Andi. Même en tant qu'individu, vous pouvez lire de nombreux avantages de l'utiliser. Donc, vous devez vous faire dire en allant vers le point com sur. Ensuite, vous serez accueilli avec cette page de destination. Vous pouvez choisir de vous inscrire si vous n'avez pas déjà un Continous assez facile. Juste le nom d'utilisateur sur l'adresse e-mail et un mot de passe sur. Vous pouvez voir que j'ai déjà un compte. Donc je viens de signer sur ce serait Michael. Non, j'utilise habituellement ça à des fins académiques. Aujourd'hui, nous voulons obtenir le projet de gestion de notre école sur lequel nous avons travaillé. Et le voilà. On veut faire ça sur le ghetto eso. Au moment de la création de ce projet, vous avez probablement coché le contrôle source. Tu ne l'as probablement pas fait de toute façon. Comme vous l'avez fait, vous auriez remarqué que j'ai des cadenas et des tiques rouges à côté de mes dossiers. C' est implicite. Sont inhérents mécanisme de contrôle de la source qui nous est donné par Visual Studio où nous pouvons effectivement suivre sont des versions ici sur notre propre machine locale sur Visual Studio nous permet de
voir ce qui a changé depuis le moment où le fichier a été créé ou depuis le dernière version du fichier. Droit. Donc, jusqu'à ce que non, on n'a rien enregistré. Toutes nos tiques sont là. Si j'élargis les contrôleurs pour vous, voyez que nous avons apporté des modifications à tous ces contrôleurs. Donc tous ont des prises ? Non. Ce que nous voulons faire, c'est vérifier tous les changements que nous avons apportés. Meilleure pratique hors cours serait en fait nous faire des comptes plus courts de poulets par opposition à la construction ou l'ensemble de la fonctionnalité ou toute une série de caractéristiques et ensuite vérifier qui
voudrait probablement poulet par fonction afin que si quelque chose se passe mal, vous pouvez toujours revenir en arrière et avoir une fonctionnalité de moins qu'avant la chose,
n' ,
n' est-ce pas ? Donc, non, je vais vous montrer deux scénarios. Vous êtes dans le scénario 1 où vous n'avez pas cliqué sur le contrôle de service et votre produit ressemblerait à ceci. Donc c'est un autre projet que j'ai sur. Vous voyez, il n'a pas de prises, connaît pas de cadenas. Et ne le fais pas. Ici, c'est au projet. C' est un contrôle de la source. Bon, donc si vous voyez cette annonce pour contrôler la source. Ensuite, il peut juste aller de l'avant et cliquer dessus. Tu devrais voir les obtiens. Si vous ne voyez pas get, cela signifie probablement que vous n'avez pas installé. Ils ont une fonction en studio visuel. Donc, vous voulez revenir à votre programme d'installation de Visual Studio et assurez-vous de sélectionner Obtenir dans la liste des options qu'ils vous donnent, mais vous pouvez simplement aller de l'avant et cliquer dessus. Cela créerait un référentiel local sur votre machine qui vous permettrait de faire une version. Contrôlez le suivi Andi ici sur votre machine. Donc, c'est un traitement pendant un certain temps. En fin de compte, ce que nous visons, c'est qu'une fois que vous avez fait cela avec succès, vous
devriez voir un changement à quelque chose comme celui-ci. Là où vous voyez, ils obtiennent le symbole. C' est le moteur derrière le tas de sources. En outre, il y a un moteur de contrôle de source appelé git sur le Ceci est le moteur derrière. Dites, obtenez un hub une grande poche et pas mal d'autres. Même si votre Dev Ops, anciennement connu sous le nom de TFS en ligne même que votre développement pousse le moteur get Ok, une fois que vous l'avez ajouté avec succès en tant que référentiel local que vous devriez voir quelque chose
ressemblant à ceci sur. Vous commencez à voir ces cadenas, ces serrures et ces bâtons à côté de vos dossiers ? Il vous aura demandé de vous assurer que vous voyez les changements avant de continuer. Puis dans l'explorateur de l'équipe. Ce que vous verrez, j'en ai pas mal ici. Donc vous voulez dire que nous avons une liste exhaustive de l'année locale ? Prends ses dépôts positifs pour moi. J' ai la possibilité de désactiver. Un zéro se développe sur. Lève-toi. Donc, à zéro développé est également libre. Vous pouvez vous inscrire pour celui-là sont vous avez besoin d'un live un cônes pour passer à travers celui-ci. Mais obtenir le top est ouvert à tout le monde, indépendamment si vous avez un accord en direct ou non. C' est pourquoi j'utilise Gets Hope Andi. Quoi qu'il en soit, Microsoft possède les deux, il devient
donc plus homogène au fur et à mesure que nous avançons. On peut toujours aller de l'avant et dire se connecter. Et si vous ne voyez pas, se lève Puis une fois de plus, vous voudrez probablement vérifier votre installateur Visual Studio sur. Assurez-vous d'avoir les outils de studio visuel pour ghetto. Je veux vous montrer une bonne façon de commencer. vous pouvez détruire, cliquez sur votre solution sur. Ensuite, on va s'engager. J' ai donc quelques changements qui doivent être engagés. Commettre signifie que vous êtes en train d'aller aux pieds. Envoyez ces modifications au groupe source de votre vérification. Votre vérification au tribunal littéralement. Droit. Je vais donc soumettre toutes ces modifications à mon dépôt. Donc l'Irak cliquez sur la solution sur vous conseiller de faire que le niveau de la solution afin que tout ce qui tombe en dessous dans le projet ou les projets sera vérifié à chaque fois. Donc, vous avez juste un clic droit que vous allez à valider. Et puis cela change le menu pour vous demander quel brunch master est la branche par défaut sur. Devez-vous entrer un message de validation ? Sachez que le but d'un message actuel est de faire savoir à votre équipe ou même vous, parce que peut-être vous y regardez en arrière. Je me demande ce qui change la viande ALS ici. Très bien, donc vous venez de mettre un commentaire pour voir ou quelles nouvelles fonctionnalités ont été ajoutées. Laisse-moi faire ça vite, ok ? Donc, vous pouvez voir que mon commentaire est calme longtemps sur leurs choses que j'ai fait que je ne suis pas capturer ici. C' est pourquoi j'ai dit au début que c'est une mauvaise pratique de vérifier au tribunal après une période très longue. Donc, vous voulez que votre commentaire raconte toute l'histoire et aussi afin de raconter toute l'histoire est mieux. Vous avez des histoires courtes, puis avez une grande histoire et ensuite essayez de tout capturer dans une grande épître. Droit ? Nous avons ajouté des contrôleurs. Depuis le début du projet, nous avons ajouté le modèle de données et nous avons ajouté la fonctionnalité d'authentification des utilisateurs. Avec chacun de ces changements, ce que nous voudrions faire est bien défini, c' est
ce qui a été fait. Ce changement. Ça a toujours été fait pour ce changement, non ? Alors encore une fois. Mais pratiquez-vous ici. Mais je nous apprends que tu y vas seul. Donc tu apprends pour ton propre but à ne pas le faire comme ça. Et puis vous voyez, calmez tout et vous seriez tenté de la slick il. Mais une fois de plus, je veux vous montrer le plus simple possible. Ne pas carotte et cliquez sur valider tout sur évier. Donc, ce que le puits sache est de vous demander d'accord, commet tout dans le dépôt local et vous voulez le couler avec où, exactement ? Donc parce que nous n'avons pas de dépôt distant, ce qui serait l'un des comme votre développe notre guitare sont. Sinon, il nous demande, où voulons-nous le couler ? Bon, donc pour faciliter l'évier, ce qu'on va faire, c'est se connecter pour se lever afin qu'on puisse disco avant et se connecter. Ensuite, cela nous invitera à vous connecter avec votre nom d'utilisateur. Donc, le signe rapidement et puis une fois que vous signerez avec peu, nous verrons tous nos déposants listés. Ok, donc après s'être connecté pour avoir de l'espoir ici en studio visuel, ce que vous voulez faire est d'aller à la maison et de cliquer sur couler. Alors ce que je vais vous demander c'est qu'il vous donnera l'option de publier pour vous lever, disons, dans juste un éditeur, se lever et puis nous vous donnerons un menu horaire où il valide juste Alozie pour les changer. Si vous voulez, vous pouvez changer le nom du dépôt, comme il semblerait sur se lever pris à,
disons, disons, gestion de
l'école O r vous vous lever à une description précise ici. Donc, le projet donc je vais taper une description rapide sont séparément, et j'ai mis la description ici créée pour le cours U Demi. Apprenez SP Bennett, NBC avec Entity Framework Database First fait. C' est, bien
sûr, que cette vidéo est associée à alors. Cela sert donc à permettre à quiconque trébuche sur la cour d'avoir une idée
de la raison pour laquelle cela a été créé ou à quoi il sert. Vous pouvez jusqu'à l'avoir privé ou public privé signifie pas. Le monde entier ne pourra pas y accéder. Ce public de base signifie que bien, le monde entier peut accéder à ce qu'on appelle S'il continue,
levez-vous , alors vous pouvez débloquer la publication. Très bien, donc une fois que cette action est terminée, vous voyez un autre changement. E vraiment sûr que vous le lien direct vers votre dépôt ici sur se lever qui viennent si vite qu' il va naviguer votre navigateur à cela. Ils vous donnent également la possibilité de gérer quelques choses de se lever ici dans Visual Studio. Donc, vous n'avez vraiment pas à aller sur le site web beaucoup après avoir créé votre contrat. Donc, si je retourne, cependant, sur je rafraîchis ici, alors je verrais que j'ai le dépôt, comme il a été promis. D' accord. Donc je peux aller à la direction de l'école sur Alors il sera que nous saurons que quatre engagements entiers ont été faits parce que ce qui s'est passé, c'est que je faisais des engagements sur mon ordinateur à mon
déposant local . Vous ne l'avez peut-être pas été, donc vous verrez probablement un commit fait. Mais tous ceux qui étaient fabriqués localement ont été poussés à se lever. Donc, se lever a le même enregistrement des changements. Sachez que mon dépôt local, dur comme j'allais le long, en l'utilisant uniquement localement. Ici, vous voyez la cour. Andi, si tu suivais ce lien, tu pourras voir l'école. En tout cas,
vous savez,
utiliser Alozie bit ghetto pour le partager avec les facilitateurs. En tout cas,
vous savez, vous savez, Oh, tes amis
sont là sur Dshea ? Quoi que ce soit vous essayez de faire si vous essayez quelque chose et que vous savez qu'il ne
fonctionne pas arctique et que vous l'envoyez simplement pour demander à notre quelqu'un de vérifier à sa porte, il est mal conseillé de poulet aux orteils ou de commettre froid. Ça ne marche pas. Donc, je vous conseille que si ça frappe. Lève-toi. Il devrait être opérationnel. Ce qui signifie que si je viens, trébucher sur son et essayer de ne pas le charger sur. Je peux toujours le cloner. Réalisez les fichiers source synchronisés avec mon studio visuel Oregon. Il suffit de ne pas le charger dans un zip ou juste un propriétaire de zoo que je peux ouvrir en studio visuel. Ou je ne peux tout simplement pas connaître le zip ici en tant que passeur par et avoir le projet comme vous l'
auriez téléchargé. Donc c'est tout ce que tu fais pour ton tribunal. Levez-vous, Levez-vous est très cool est très puissant. Andi, j'espère que tu finiras assez bien cet exercice. Si vous avez des difficultés, hésitez pas à me laisser une ligne dedans, vous savez ?
17. Comprendre la gestion de paquets: Hé, les gars, dans cette vidéo, nous allons jeter un coup d'oeil sur la gestion des paquets. Non, j'aurais déjà mentionné auparavant, et nous regardons ce qui vient avec le projet, mais que nous obtenons tous ces fichiers d'amorçage et tous ces fichiers de script Data Query et ainsi de suite. J' aurais mentionné qu'ils ne sont pas nécessairement toujours aux dernières versions, à
droite, droite, parce que, comme ils construisent sur elle pour obtenir la personne 1.10 point un et un à une offensive Citrus pour la façon la plus facile ou la façon dont vous probablement penser à cela naturellement, toe poke lire ces fichiers serait d'aller et obtenir les fichiers physiques et revenir et les
remplacer ici dans le projet. À ce sujet, ce serait bien. Ce serait compréhensible. Mais alors Visual Studio essaie de le rendre plus facile pour vous en vous donnant ce qu'ils appellent nouveau, obtient la gestion de poche. Donc, si vous faites un clic droit sur votre projet ou vos références ek lik, alors vous verrez qu'ils ont cette chose appelée gérer. Vous obtenez des paquets. Quand tu as pris ça, ça s'ouvre. Ah, joli menu sexuel où il énumère tous les paquets installés. Toutes les mises à jour possibles sur également descendre dans Brose coudre là des fois où ce qui sort de la boîte de studio visuel pourrait ne pas être adéquat pour ce que vous voulez faire sur DSO. Ils ont une communauté open source où ils sont des personnes faibles pour apporter des solutions afin
que vous puissiez réellement développer toutes ces solutions ici. Andi tolère le butin en unités. Vous pouvez obtenir des adopteurs pour mes abeilles amères SQL. Andi, même bootstrap tout ce dont vous pourriez avoir besoin. Il est quelque part ici donc vous pouvez toujours une recherche. Si vous savez exactement ce que vous voulez, vous suffit de cliquer dessus et d'afficher plus de détails. Quant à la version, ils considèrent exactement quelle personne. C' est donc une sélection très puissante sur un outil de gestion de paquets. Je vais passer sur les opiacés des orteils parce qu'on peut voir que nous avons 34 opiacés en attente. Donc, comme au moment de cet enregistrement, NBC 5 était en quelque sorte éliminé progressivement, donc c'est un peu derrière. Mais ah, beaucoup de ces choses sortent de la boîte à l'époque. Là où le dernier Non, ils ne sont pas les derniers. Donc, nouveau get me permet de dire, OK, je peux opier et regardons Bootstrap j'ai averti de mettre à jour Bootstrap parce que si j'ai
obéi à bootstrap ici, je passe de la version 3.0 à la version quatre là-bas. Pas mal de changements dans la cour pour bootstrap entre trois et quatre. Donc un grand saut comme ça provoquerait que c'est après les tests de régression
et les changements et partout, non ? Donc, dans le but de ce cours, je ne vais pas mettre à jour vers la version quatre point. Oh, accord, mais alors, fur et à mesure, on voit que Jake s'inquiète de ça. C' est la version 1 ? Ce n'est pas la version 3.4 de l'autre Jake, ou si les bibliothèques sont plus loin que nous en ce moment, vous voyez que les bibliothèques M V C. Donc, ce n'est pas seulement pour les fichiers JavaScript et CSS, mais aussi pour les transactions, et les autres sont répertoriés dans les sections de références, toutes ces choses qui lui donnent la fonctionnalité réelle. Toutes ces choses peuvent être mises à jour en utilisant de nouveaux gets. Donc, je vais me concentrer sur moi dans les fichiers de script parce que parfois, quand vous mettez à jour les concessionnaires, les choses jolies arrêtent de travailler des problèmes de compatibilité et toutes sortes de choses. Donc, je vais juste garder cela simple sur je suis juste dans la mise à jour tout ce qui est javascript. Donc ici, je sais que c'est un fichier de script Java. Très bien, graisse
sur le Web. Il est fait pour l'optimisation. Je vais utiliser ça. Aussi, je vais prendre Newtown. Genius, mon fils, je prendrai le modernisateur. Tu prends le geek. Validation d'usure sur G Quartey. Andi, s'il vous plaît noter s'ils vont mettre à niveau n'importe quel fichier j Corey dot, s'il vous plaît obéir au fichier basé sur la requête J ont rencontré des problèmes dans le passé avec cette pensée que Oh, je n'ai pas besoin de draper mis à jour, mais les autres choses que je peux opier. Donc, ces choses peuvent être mises à jour si je serai un bootstrap qu'il opierait le fichier CSS sur mais le script qui lui est associé. Mais encore une fois, je déménage d'Andi. Je laisserai tout le reste. Comme c'est bien sûr que vous pouvez. Vous pouvez toujours régler la zone si vous essayez les mises à jour des orteils. Les points Microsoft. La dépendance est des épreuves de version en version sur quelque chose de briques que vous pouvez toujours succession. Notez quelle version a fonctionné et puis vous pouvez simplement gouverner Boksic et désinstaller ou vous pouvez voir quelle est la version que vous voulez dans le sélectionné comme ça ? Et il dort un peu et il installera cette version spécifique pour vous. Donc je veux le dernier. Mais celui-ci dit, remettez-le alors. Une fois que vous avez fini, vous savez, choisir et choisir. Et la même procédure s'applique à celle que vous vous opposez et essayez d'installer. Vous choisissez simplement avec celui que vous voulez et n'importe quoi pour parler. Commencez ce serait dans le style, une orbite de soutien, quelqu'un d'aller de l'avant et le haut de la thes. Donc, mon problème à faire dans ce processus pour dire que Oh, là, il est sur le point de faire ces apparition sur. Êtes-vous sûr de vouloir cliquer continuellement ? OK, alors vous acceptez tous les contrats de licence qui viennent à votre chemin, l'art et nous avons fini. Donc, vous verrez que vous avez quelques ticks rouges supplémentaires parce que des changements ont dû être faits,
Um, Um, sur le nouveau get INGE initialement en ce que nous avons moins de mises à jour en attente parce que tout le reste est là plus tard Donc vous pouvez juste fermer cette fenêtre. Quoi ? Je tiens à vous signaler également visible, mais encore une fois, tiques
rouges ici, Onda les paquets. Ce fichier de conflit est en fait comme suivre tous les paquets qui sont dans notre projet. Si nous regardons dans le dossier des scripts, nous voyons que nous avons de nouveaux fichiers. Donc, quand nous obtenons un nouveau fichier à cause de notre moteur de contrôle de recherche, suivi tous les changements que nous obtenons, plus la science ou obtenir sait que c'est un nouveau fichier. Il n'a jamais été là sur les moyens névrotiques que ceux-ci ont été modifiés, non ? Donc, il s'est débarrassé des vieux fichiers et a apporté les nouveaux fichiers. Le jour, nous n'avons pas volé d'opiacés sur nos fichiers CSS. Donc, il n'y a pas de changements là-bas
, bien sûr. Si j'ai réduit Bootstrap, alors vous verrez des signes pro là pour les nouveaux fichiers. Très bien, donc une fois que tout cela aura été fait, nous pouvons tout simplement aller de l'avant et contrôler le changement et être de faire un projet de loi sur la construction a été couronné de succès. Je vais aussi aller de l'avant et vérifier dans ce côté de la cour de l'école et m'engager
encore une fois parce que nous avons ce sont des réponses. Contrôle ? Non, nous suivons chaque changement que nous faisons. Donc nous allons dire abaissé. Certains fichiers de script sur les nouvelles versions de geek inquiet ajouté afin que cela devrait être
assez descriptif . Et puis nous pouvons estimer tout et couler. Donc, une fois que nous faisons cela, ce qu'il fait est de valider les changements localement sur. Ensuite, cela les pousse simplement à obtenir un emploi automatiquement afin que nous n'ayons pas à nous impliquer dans la deuxième étape. Une fois que vous engagez tout et couler sur,
Là, nous allons synchronisé avec succès Andi une fois de plus si nous jetons un coup d'oeil au ghetto, mais nous venons de rafraîchir. Alors nous verrons où aller. Si les comètes sont bien sur en cliquant sur commits, nous pouvons voir tous les changements quand ils ont été faits. Andi quoi ? Les infos. Très bien, donc c'est là que vos commentaires sont utiles. Et puis si vous voulez cette version spécifique, il peut simplement cliquer dessus. Il vous montrera ce qui a été fait. Ils ne peuvent que geler les fichiers pour obtenir cette version spécifique des fichiers. Donc, si quelque chose casse que nous pouvons juste retourner orteil avant de faire ceux que vous obtenez des mises à jour
18. Ajouter des modules de lecture et de gestion de l'inscription: Hé, les gars. Donc, nous sommes allés orteils. Tout un jalon avec notre projet. Et non, nous voulons commencer à attribuer des cours aux étudiants. Andi se déplace avec réellement avoir un système de gestion scolaire. Non. Une chose que nous n'avons pas fait avant non est à une table sur la structure requise. Pour soutenir l'ajout de conférenciers au cours, c'est parce que nous avons des cours. Nous avons des étudiants et nous avons des inscriptions. Les inscriptions seraient un étudiant assigné à faire,bien
sûr, bien
sûr, selon le degré qu'ils obtiendraient. Mais ce que nous n'avons pas, c'est d'avoir le conférencier qui enseignerait le cours. Nous n'avons pas de facilité pour gérer cela dans notre application telle qu'elle est actuelle. Donc, cette vidéo vise simplement à ajouter ce nouveau module et au fur et à mesure que vous allez avec votre développement, surtout si vous le faites de manière agile, au besoin,
vous devrez peut-être modifier votre application pour
qu' elle s'adapte les besoins. C' est donc le scénario que nous voulons mettre en évidence aujourd'hui. Donc, nous commençons par ajouter le conférencier, table, orteil ou la base de données, ou donc j'ai ma connexion par défaut ou la gestion de l'école afin qu'ils utilisent un explorateur de serveur ou utilisent l'explorateur d'objets SQL. Vous devriez avoir le même effet quelqu'un d'utiliser mon serveur SQL Object Explorer et je vais ajouter une nouvelle table à ma gestion de l'école Devi sur Ce sera pour les conférenciers. J' ai donc ajouté le prénom et le nom de famille à ce jour pour être une écurie, hors cours. Peu importe ce que vous voulez commencer sur les élections, vous voulez juste mettre dans l'écurie. Peut-être pour votre système de gestion scolaire. Vous voulez construire un profil entier pour les secteurs ici à une image de profil, peut-être leur eau de spécialité c'est. Mais pour que l'État bouge, je vais juste le laisser tel quel. Le prénom nom de famille. C' est tout ce dont nous avons besoin pour une conférence donnée. Au moins en ce moment, nous devons également nous assurer que notre colonne I D est automatiquement incrémentielle. Donc pour ça, je peux distraire les soins de Lee et juste inclure cette identité sur les conseils. La colonne incrément et je pense juste l'identité pour s'assurer que son identité et s'
assurer qu'il est compté d'un à chaque fois sur une fois tous ces changements ont été faits et vous verrez réfléchir ici dans les tribunaux ou l'euro, le froid déjà de cette façon. C' est bien sur. Ensuite, vous pouvez mettre à jour cette stable sur ce succès No. Un autre changement pour moi est de l'inscription stable parce que sur l'inscription, essentiellement est d'assigner un conférencier à une classe avec un étudiant sur ce qui a convenu que conférence aurait donné cet étudiant pour cette classe. Donc, c'est son ensemble ou la table d'inscription est mis en place. Donc, nous voulons nous assurer que nous modifions notre inscription, capable d'être conscient qu'il devrait avoir une autre clé étrangère dans la forme hors conférence I. D. Soto. Ajoutez les contraintes de clé étrangère à la stable d'inscription. Je vais juste prendre la voie Circle et copier et coller un hors du pays qui est déjà là et juste changé les informations selon mes besoins. Alors je suis allé voir le conférencier, alors je suis mort
et puis on change les orteils de table sur la colonne I D. Teoh i D. Et j'ai fait une erreur là-bas, donc ce serait I D. puisque c'est la colonne de clé primaire ici pour qu'on sache que c'est la lettre que je fais. Vous devez l'appeler idée de conférence tout, et il est clairement des déclarations de tous les problèmes. Et je reçois une erreur ici parce que je n'ai pas de virgule. Donc le coma sur puis tout cet air devrait disparaître. C' est donc l'ajout de la contrainte. Ce que je dois faire, c'est au rôle de la colonne. Plutôt si la conférence I d. Mi recherche entier parce que c'est une clé étrangère. Andi, je ne vais pas seul. Non, parce que ça n'a pas de sens. Inscription au four avec un cours et un étudiant et pas de conférencier, non ? Ou je peux laisser ça. Non, parce que vous pourriez avoir les étudiants et aller au cours. Et nous ne savons pas encore qui va enseigner, alors sachez que tout va bien. J' ai la colonne de lecture i d et une contrainte inacceptable de voir qu'elle devrait s'appliquer à la colonne de lettre I d et référencer la colonne d'ID dans les conférences sur. Alors tout cela est en place, donc je clique dessus. Cela devrait mettre à jour nos tables de base de données. Maintenant, rappelez-vous que nous faisons le développement de base de données d'abord, ce qui signifie qu'une fois les changements dans la base de données, vous devez mettre à jour notre modèle, donc nous devons trouver ou dans différent où le modèle, que vous venez double-cliquez ici et accédez à ce diagramme. Ensuite, nous avons quelques-uns d'entre nous que nous attendons bien, nous nous attendons à ce que le tableau in Roman soit mis à jour avec une nouvelle colonne sur laquelle un nouveau tableau sera ajouté à ce modèle lié à l'inscription. Donc, je vais faire un clic droit dans l'espace vide sur Click Update modèle de base de données, qui ferait alors apparaître ce style de boîte. Je peux explorer et sélectionner spécifiquement les tables. Je souhaite orteil ajouter. La raison de cela serait que je ne veux pas ajouter d'historique de migration. Si vous faites cogné avec des règles et des utilisateurs, alors trouvez que vous pouvez le faire. Mais je ne vais pas faire toutes ces choses qui m'intéressent seulement par une
écurie de conférencier , puis je clique sur Terminer. Une fois que cela est fait, il fait une re complète d'abord actualise la table d'inscription et les annonces dans la colonne manquante sur elle ajoute
également dans ma table de conférencier et montre la relation entre eux aussi remarquer parce que j'ai autorisé Non, La notation ici est différente de la notation ici. Je sais que j'ai ma table Electra. La prochaine étape est de rendre les opérations de foule disponibles, donc je vais juste aller voir les contrôleurs. Cliquez sur, ajoutez un nouveau contrôleur, puis je vais continuer avec le contrôleur NBC cinq avec Entity Framework. Je vais spécifier que je veux que ce contrôleur soit basé sur la table des conférenciers, qui n'est pas répertoriée. Et si vous rencontrez ce problème, c'est parce que nous n'avons pas construit. Donc, chaque fois que vous faites un changement à la mère et je pense que je l'ai dit avant, vous avez toujours été un peu de changement de contrôle et être et juste faire une construction rapide après une construction
réussie, nous pouvons essayer l'opération à nouveau. Donc, nous enregistrons les contrôleurs goto annonce nouveau contrôleur, continuez avec le contrôleur basé sur le travail différent Trouver sur le modèle afin que je puisse réellement juste taper élu juré sur. On y va. Donc, notre modèle n'est pas disponible sur. On peut laisser tout le reste, comme c'est le cas. Nous allons de l'avant et pensons qu'une fois cette opération terminée, nous allons atterrir sur ce contrôleur avec tout déjà branché et nous avons déjà
passé tout puissant. C' est que nous obtenons notre liste de tous les conférenciers, le détail par conférence, qui serait comme cette page de profil que nous obtenons à créer à tout moment tous les jours. Donc, nous savons que nos opérations de foule pour tout donné que vous êtes terminé, Ce que vous voulez faire est probablement à quelques lettres de test afin que nous puissions continuer avec
les inscriptions. Onda. En outre, je vais juste ajuster ma page de mise en page pour m'assurer que je peux facilement accéder à mon conférencier parle. Je vais juste ajouter un autre couchage ici, contrôler, voir envie. Et ce sera pour un conférencier de sorte que quand nous ne pouvions pas ce lien, nous serons dans cette foule perdue Operation Space. D' accord, donc je suis si vite couru et je te montre à quoi ça ressemble, même si ça devrait être très familier. Très bien, donc voici notre page, et nous voyons que le lien de nos conférenciers n'est pas ajouté et affaiblir le frère à elle. Et j'ai ajouté quelques louches ici Jack Daniels, Johnnie Walker et Re neveu. Donc c'est tout pour ajouter le modèle de gestion de conférencier ou l'application sur. Bien sûr, le dernier acte de cette vidéo est le contrôle dans ce code, afin que nous puissions nous assurer de reprendre là où nous nous sommes arrêté. Si quelque chose se passe autour afin de comprendre, d'écrire un message rapide sur. Ensuite, nous nous engageons tout et chantons Jean, en engageant nos changements localement. Andi sur le ghetto enfer pour la gestion des inscriptions. Nous allons répéter beaucoup des étapes que nous venons de franchir avec nos conférenciers. Mais alors beaucoup plus d'ajustements vont être moi. Pour que nous puissions avoir,
ah, ah, belle application dynamique et conviviale à la fin de celui-ci, quelqu'un pour commencer par ajouter un nouveau contrôleur en le laissant avec le framework d'entité. À ce moment-là, nous allons le faire pour notre modèle d'inscription. Donc, nous avons traversé et nous avons fait pour tout sauf les inscriptions. Donc, nous créons que ajouter Tout droit, Donc pour notre contrôle des inscriptions que nous allons juste prendre parfois apprécier ce qui se passe ici parce que cette table va être un peu plus unique que toutes les autres tables que nous avons ajoutées contrôleurs pour sur à cause de cela, ils sont un peu plus de téléphone dit qu'ils vont être ici que vous ne l'avez probablement pas vu avant. Non, donc, tout d'abord, pour notre page d'index. Vous voyez ici que nous obtenons une requête légèrement différente et je vais parler ou des conférenciers nous ont contrôlés afin que nous puissions comparer pour le contrôleur électrique. Tout ce que nous avons à faire est d'obtenir tous les conférenciers ou un point DVD Nature est la liste à suivre, et nous venons de le retourner. Cependant, vous remarquez que nous avons deux lignes dans les inscriptions et nous déclarons une variable appelée Inscriptions, qui exécute un Corey similaire obtenant la base de données du contexte, obtenant les inscriptions. Mais alors nous faisons quelque chose appelé Inclure sur ce qui inclut Does Is It initie ce que nous
appelons chargement impatient, qui inclut littéralement toute entité liée à cette table. Donc, en d'autres termes, si nous regardons notre modèle très rapidement, nous verrons que nous avons trois taux d'inscription des orteils de relations tardives, que je vais juste le faire glisser sur l'écran pour que nous puissions le voir différemment. Très bien, donc quand j'arriverai le diagramme d'intérêt, vous voyez que les lions suivent les inscriptions. C' est parce que le conférencier est associé aux inscriptions les étudiants n'est pas
associé aux Romains sur le cours est un associé à l'inscription, ce qui signifie que si nous regardons sur l'inscription, nous devrions voir des données pour le conférencier. Les pores sur les étudiants sur DSO lorsque le contrôleur est généré cherche à
tenir compte de toutes ces relations sur elle écrit la carrière qui voit que vous devez inclure des données pour le cours connexe. Vous devez inclure des données pour les étudiants associés, et vous devez également inclure des données pour le conférencier associé. Donc, chaque ligne hors inscription va à la pointe. Avoir des données associées au cours, l'étudiant sur le conférencier. Donc, quand nous chargeons l'index, nous pouvons regarder cela un peu plus sur. Ensuite, si nous regardons crée, alors nous verrons qu'il crée une variable générique, qui est sous la forme de ce que nous appelons un bug de vue sur. Vous auriez vu le sac de vue pour un peu dans une conférence précédente, mais le sac de vue est juste quelque chose qui est créé à la volée sur ce que nous lui assignons est une liste déroulante qui C forte ou SP dotnet NBC causer une liste de sélection sur nous le chargeons avec la liste des cours sur. Nous associons cette liste de sélection. Le I D ou la valeur doit être le I D hors du cours sur ce qui doit être affiché serait le titre. Bon, maintenant on fait ça trois fois. Nous le faisons pour le cours que j'ai suivi pour les étudiants pour les conférences. Donc, pour chaque relation, nous voulons probablement avoir une liste déroulante qui nous permettra de sélectionner la valeur que nous voulons créer cette relation avec Andi. Au fur et à mesure, nous verrons que tout ce qu'il fait est de prendre toutes ces valeurs pour créer un
enregistrement d'inscription . Il en serait de même pour les éditeurs. Tu sais que tout crée part beaucoup de la cour Onda. Quoi qu'il en soit, si vous supprimez des inscriptions, vous supprimez simplement
lors de l'inscription afin que les prospects ne soient pas très différents. Donc, nous pouvons simplement aller de l'avant et cliquer, Démarrer et voir à quoi ressemble notre modèle d'inscription. Avant de faire cela hors cours, vous voulez ajouter un lien à notre mise en page payé afin que nous puissions y arriver facilement, va rapidement sauter sur partagé sur Leo's et comprend une fois de plus dupliquer cette ligne de la même manière. Et je vais juste prendre toutes les pages n'ont pas utilisé donc je ne suis pas à l'aide d'un bateau et contacts comprennent pour supprimer ceux du menu. Nous avons donc plus d'espace pour les pages qui comptent vraiment. Bon, donc, non, je peux juste naviguer. Nous allons vérifier comment et la romance ressemble. Donc, lorsque notre page se charge, nous pouvons simplement cliquer sur les inscriptions et nous verrons la liste qui est là jusqu'à présent. Andi, je les avais ajoutés directement à la base de données, donc je suis entré et j'ai dit, étudiant est affecté au cours un, etcetera, etcetera. C' est pour ça que tu verrais ces choses ici. Un Z peut voir que la table prendrait quelques modifications parce que,
bien, bien, génial n'est pas de titre, n'
est-ce pas ? Le nom de famille des étudiants seul est là sur le prénom est là ? Mais ce n'est pas nécessairement tenir. Nous voulons que nos étiquettes regardent. Ce ne sont pas nécessairement les données que nous voulons présenter ici. Si nous regardons crée, nous voyons que nous obtenons nos trois boîtes déroulantes afin que nous obtenions ou super ici, qui était le texte que nous obtenons le cours I d, ce qui nous donne la liste déroulante que nous obtenons. Le problème, c'est pour les étudiants. Nous avons une liste déroulante pour seulement les noms de famille de notre conférencier. Donc, nous voyons que nous devons faire un peu de modification. Ce que nous visons vraiment, c'est de remanier ce discours. Donc, quand nous reviendrons, nous verrons comment nous pouvons faire des bateaux pour modifier toutes ces choses.
19. Installez des bibliothèques JQueryUI Javascript: Hé, les gars, dans cette vidéo, nous allons regarder installer Ajay Kori, vous I bibliothèque dans notre projet. Maintenant, nous aurions regardé Newgate et la gestion des paquets dans une vidéo précédente sur DSO. Dans cette vidéo, nous allons voir comment nous pouvons utiliser Jake. Êtes-vous je dans notre application, comme nous allons utiliser la fonctionnalité complète automatique, ce qui signifie que les manuels, quand nous commençons à taper, il sera également complet avec toutes les correspondances possibles, vous savez, similaire à la recherche Google. D' accord. Donc, d'abord, nous allons jeter un oeil à Jake, ou vous êtes de la documentation. La documentation est facilement disponible sur leur site Web. Vous pouvez aller à Jake où vous êtes dot com commande simplement google. Jake, où tu es sur ce site, tu verras qu'ils t'en donnent un tas. Widgets et outils, comme nous l'avons dit, seront utilisés dans l'auto-complete pour le reste de cette activité qu'ils offrent Vous ne connaissez pas les liens sur les liens syriens ensemencement, signifie qu'ils l'hébergent et vous venez d'inclure ce lien dans votre noyau sur ce qui prendra soin de la référence pour vous. En plus de tout cela, qu' est-ce qui est nécessaire pour utiliser Jake, n'est-ce pas ? Je suis Jake sont lui-même donc Jake, ou est un framer qui est construit sur JavaScript sur c'est presque un steer méchant,
une base dans les développements mondiaux ces jours-ci sur Jake, où vous nous sage construire sur le double de ce cadre et nous donner, hum, widget. Si tôt dans la conférence, j'aurais parlé d'ajouter, comme un sélecteur de date à la zone de texte où l'heure de jour est requise. Eh bien, Jake, où tu as un sélecteur de date et on peut juste jeter un coup d'oeil
sur tout le sélecteur de date regarde comment ça marche. Donc, ils nous donnent un exemple de page ici, puis nous nettoyons les manuels et nous voyons que le sélecteur de date apparaît et cela nous
permet de sélectionner le bit là sans avoir à taper portable. Et je suis ici en train d'attaquer et ça désactive les entrées. Donc, c'est l'un des avantages à utiliser, comme un widget de sélecteur de date à la place, off permettant à l'utilisateur de taper la date pour lui-même sur. Ensuite, ils vous montrent également le code source qui est requis. Ils vous donnent une idée de ce que la feuille de style a un besoin, ainsi que les fichiers de script de surveillance doivent être inclus sur. vous plaît noter que vous avez Jake inquiet être inclus ainsi qu'une requête. Pourquoi sur ceux-ci serait un exemple ? La valeur SRC serait un exemple de ce qu'est un CD dans. Tu sais, c'est juste un orteil à maillons. Le fichier étant hébergé quelque part sur Internet de sorte que vous n'avez pas à avoir le loin physique . J' ai remarqué. En outre, cet ordre murmure,
vous devez vous assurer que vous incluez Jake ou avant d'inclure Jake ou vous I Sinon,
vous rencontrerez vous devez vous assurer que vous incluez Jake ou avant d'inclure Jake ou vous I Sinon, des problèmes de référencement sur, puis l'avoir référencé à ces deux fichiers que le fonction JavaScript réelle ou fonction de requête
J qui est utilisée pour appeler réellement le sélecteur de date est le pneu. Récupère les éléments du sélecteur de date, qui est l'entrée. Donc, nous avons un pitak, bien sûr, et puis nous avons une entrée interrupteurs tactiques. Mais l'idée est le sélecteur de date. Donc, nous voyons ici que Juncker utilise le même type d'identification d'un hashtag CSS pour l'idée sur un
point pour une classe afin que le sélecteur de débat de hashtag cible les éléments et appelle la
fonction de sélecteur de date sur. C' est vraiment ce qui implique l'annulation du calendrier la façon dont obtient son style est en incluant le fichier de thème de base pour le Jake inquiet Vous y allez bien ? Ou peut-être que vous voudriez inclure celui spécifiquement pour le sélecteur de date que je sais qu' ils le font aussi,
n'importe quel trou que nous regardons la fonction complète automatique qui, si vous le regardez en action, étant donné une liste ou sur toutes ces valeurs, vous devriez être en mesure de commencer à taper et puis il fera des suggestions pour vous Voir cela ? Donc si je tape t va chercher tout avec un T et me rendre ce que je
veux peut-être et c'est tout ce que nous allons bonjour. Quiconque ajoute deux cours pour rechercher les noms des étudiants, ajoutez-les à la classe d'une manière agréable, amusante, amusante,
dynamique et interactive. Maintenant, retour en studio visuel, nous devons inclure les fichiers Jake ou EU I dans notre projet. Maintenant, encore
une fois, instinct vous fera probablement aller à la page de mise en page et juste les inclure ici, ce qui serait très bien. Vous pourriez simplement copier ce froid avec le cdn. liens sur juste les inclure ici sur votre petite page et ensuite vous continuez. Mais nous voulons mettre en évidence l'ensemble de la gestion des paquets nous aide à garder le contrôle de ce
qui se passe. De plus, nous allons voir ce que ces lignes hors cour signifient. Donc, notez que nous n'avons pas dans notre Leo Pidge de balises de lien et nous n'avons pas de
démarrage de script , Mais pourtant nous savons que nous sommes amis dans CSS 5 et nous référençons les fichiers de script Java. Donc, ce qui se passe, c'est que nous avons un fichier dans notre dossier upstart appelé Bondo Conflict. Le conflit de Bundle contient en fait des références à nos fichiers pour nous à partir d'ici,
nous pouvons réellement l'emporter sur tous les fichiers en remorquage. Une partie de fonction de ce que vous appelez. Donc, prenez le contenu que CSS, par
exemple. Donc, c'est le nom du bundle pour nos fichiers CSS sur. Ensuite, une fois que ce bunless a appelé, il va inclure le bootstrap sur le fichier CSS ainsi que notre site que CS est loin et il va regarder dans notre page de mise en page. Ensuite, nous verrons que nous avons un seul appel toe le bundle tel que spécifié par nom. D' accord. Voyez si vous regardez un tueur, vous remarquez que vous avez des ordonnances. L' Orender regroupe une requête. Et si nous regardons dans la configuration bundle, vous voyez que vous avez vos paquets, Cher requête ici, amis par nom. Mais c'est seulement inclure quelque chose dans le dossier des scripts que nous pouvons simplement examiner cela. Donc on va aux scripts, puis il cherche Jake ou un Dash. Nous avons des fichiers qui ont jaker et Dash sur, puis cherche une version, qui serait le numéro de version, que nous avons 3.4 point un sur points gs. Donc, à peu près, cela nous donne une belle dynamique orteil toujours inclure quelle que soit la version J Query est ici parce que si c'était 1,1 point zéro, ce que je pense que c'était avant que nous la mettions à jour, alors il était référencé et nous n'a pas eu à changer quoi que ce soit. Maintenant que nous l'avons mis à jour, nous n'avons toujours pas à changer quoi que ce soit ici parce qu'il chercherait juste quelle est la
version qui est disponible pour moi à l'époque. La prochaine chose que nous voulons faire est d'utiliser new get toe inclure tous les
fichiers Jake ou vous I script sur ces feuilles de style dans nos produits, donc nous allons juste aller sur vous sortir du haut ouvert. Mais si vous ne le faites pas, alors vous pouvez distraire Lee le projet sur Go to Manage, vous obtenez des paquets Ce Alors alors leader explorer encore ce qui est installé pour obéir à son ou aller à bro. Nous sommes donc intéressés par la navigation parce que nous voulons quelque chose que nous n'avons pas actuellement dans nos solutions, donc je peux commencer à taper sur. Je crois que je l'ai cherché avant. Alors, Jake, où vous je viendrais et ça comblerait Terrell hors cours. Et puis nous pouvons toujours cliquer sur les résultats de recherche sur. Ensuite, il suffit de lire la description. Regardez aussi l'auteur et assurez-vous qu'il semble que c'est légitime. Les frères vont de l'avant. Je peux changer de version si je veux, mais je crois que la dernière stable sur Go Ahead et Click Install je veux dire le problème ensemble et de parler d'accord et de permettre à cela de fonctionner. Après quelques instants et une opération réussie, vous devriez voir un nouveau FAZ apparaître dans votre dossier Contenu ainsi que dans votre dossier de scripts . Non, nous devons laisser notre configuration bundle inclure ces fichiers lors de Render. Nous avons déjà un bundle pour les fichiers CSS. Certains veulent juste ajouter le fichier CSS qui est associé à ma fille complète Comprendre pour inclure le fichier CSS complet automatique dans mon bundle. Donc, je vais juste voir le karma et puis je vais orteil par chemin sur le chemin vers cela est à travers le contenu des haricots slash slash base slash slash auto se termine. C' est CSS. Alors je nous ai laissés là. Donc c'est le jusque là. Ce qui veut dire, vous savez, quel que soit le chemin du feu avant qu'on n'ait le contenu que l'inclure. Bien sûr, il za baleine dynamique pour créer et relatif vous êtes I et puis slash contenu puis à partir du contenu, car ils vont dans le dossier de l'équipe sur puis de deux ans plus aller à la base, puis à
l'intérieur du baseball que nous recherchons complétez automatiquement ce que CSS sait. Ce que cela fera est quand il rend sur Leo Page, et il rend ce bundle huntin CSS. Ensuite, il va charger tous les fichiers CSS de la une fois afin que nous n'ayons pas à aller le changer partout ou tout ce que je voudrais juste le changer à un endroit et il est juste rendu. Une autre chose que nous voulons faire, c'est inclure notre Jake Worry Dash You que j'ai viré. Maintenant, nous incluons déjà Jake porte Comprendre pour copier cela parce que ce serait une dynamique
similaire sur comprendre. Pour placer cela, je vais créer un nouveau paquet de script et l'a appelé J Query Dash vous I. Et puis ce que je vais modifier ici ce sont des scripts. Requête Slash J. Frappe toi. Pourquoi ? Parce que c'est le nouveau puncher. Assez pour les fichiers via la version de tableau de bord large de la requête dashi. Donc c'est J. Corey Dash U Dash dans n'importe quel numéro de version. Donc, si on y
obéit, c'est des années à partir de 1,12 point. Oh
, tant que le disque des pirates reste intact, c'est toujours un feu de J que celui-ci, le conflit va juste prendre la dernière version et courir avec elle. C' est donc l'avantage d'utiliser ce pays groupé. Donc, nous pouvons toujours simplement enregistrer les changements là et puis parce que nous avons ajouté un nouveau conflit que nous allons avoir orteil rencontré ou page de mise en page savoir à ce sujet afin que nous puissions simplement dupliquer cette référence de bundle de
requête J et nous ajoutons juste Dash You je me souviens ou leur mères. Donc, le cours Jean devrait toujours venir en premier. Ensuite, la dépendance est par la suite. Alors gardez cela à l'esprit si vous voulez réorganiser l'ordre de ces rapides Non, nous pouvons juste faire une exécution rapide et voir à quoi ressemble notre cour. Maintenant, nous pouvons rapidement exécuter ou l'application et aller voir la source payée, qui va alors nous montrer que tout doit être rendu. Donc, nous avons notre script rapide ici étant inclus Jake Worry, puis Jake où vous et puis rappelez-vous que bootstrap sort les mots pour que tout soit rendu comme prévu. Mais nous voyons une erreur ici avec plus de longueur comme Onley Bootstrap que CSS est rendu et nous devrions avoir trois fichiers. Donc je reviens rapidement à notre conflit de paquets qui est et s e ici où l' air est que nous avons. Nous n'avons pas référencé cela correctement cérébral, que nous devrions donc avoir une virgule après chaque bloc de chaîne, pas un signe plus. Donc, nous avons bootstrapped. C' est oui, c'est côté virgule, pas la virgule CSS. Et puis notre commande complète fichier CSS. Et si nous en avons d'autres. Et nous utilisons juste une virgule par la suite, affaiblissons à nouveau l'errant et voyons si nous avons des améliorations. Bon, donc on peut l'envoyer à nouveau. Onda. Et on y va. Donc, tout est rendu correctement avec pour le bootstrapping où nous sommes à côté de CSS. Et puis où étaient tous les complets cette cirrhose. Et c'est ainsi que vous allez tous les deux, y compris un paquet. Essayez au moins à l'intérieur du paquet JavaScript et CSS sur l'ensemble. Vous le feriez. Bonjour. Il doit être rendu dans votre Leo Peach d'une manière dynamique hors cours. avoir inclus dans la page de mise en page, ces fichiers seront disponibles pour toutes les autres pages, y compris notre discours d'inscription, qui est l'endroit où notre tribunal complet automatique sera exécuté.
20. Implémenter JQueryUI Autocomplete: Hé les gars. Dans cette vidéo, nous commencerons à mettre en œuvre notre fonction complète Jake Worry Auto pour nous aider à inscrire étudiants à un cours. Mais avant d'entrer dans tout cela, je veux passer rapidement par quelques ajustements que j'ai apportés à l'application depuis la dernière vidéo. Et vous pouvez vous sentir libre de les imiter si vous le souhaitez. Tout d'abord, j'ai enlevé le contact sur un bateau liens de plus pas de barres. Et non, nous n'avons que des cours à domicile, étudiants et des inscriptions, accord. Et on pourrait juste ajouter des conférenciers ici. Considérant que nous avons ajouté un modèle pour gérer l'étoile de conférencier juste que rapidement, donc sont assez. Barno n'a que des liens. Donc, nos modèles que nous avons implémentés ou mis en œuvre Deuxièmement, vous remarqueriez que j'ai un style qui rend sur cela rend certains styles pour Jeker. USO a ajouté un nouveau bundle à mon conflit de bundle pour la requête J Pourquoi j'incluais le basé tout ce CSS qui inclut la base que CSS Andi semble que les fichiers de Syriza ainsi que et j' avais le sélecteur de date je faisais une expérience. Mais cela devrait vraiment être complet automatiquement, pas CSS donc j'ajoute ces deux fichiers à mes importations globales de thèse, et je les référence dans la carrière DJIA. les étoiles, je vous rends bien, et si le besoin se fait sentir, orteils ont plus que ce qu'on peut juste les mettre comme on sait qu'on a besoin d'orteils une fois de plus, ordre compte. Donc, vous voulez vous assurer d'inclure tous les fichiers de base d'abord avant les
fichiers CSS individuels ? D' accord, donc, non, avant d'entrer dans notre Jake ou l'excitation,
je veux qu'on retourne à notre documentation ici, donnée par geek ou vous i dot com et juste jeter un oeil à l'auto complète fonctionnalité. Ce que nous visons, c'est quand nous tapons le nom d'un étudiant ici et sélectionné dans cet exemple , il est fait avec la charge de programmation. Donc, disons que les langages de programmation seraient nos noms d'étudiants, et je tape quelque chose comme HS. Ensuite, on s'attend à ce que tous les étudiants dont le nom contient le SH apparaissent dans cette liste déroulante. Voyez si ce type voit quand vous obtenez une meilleure photo sur. Ensuite, quand je sélectionnerai que ce sera que les étudiants qui seront et roulés une fois que je clique sur créer, donc nous le faisons en morceaux en ce moment. Nous nous occupons juste de la mise en œuvre de la commande complète dans la prochaine vidéo. Ensuite, nous allons traiter de réellement faire cela, en ajoutant la fonctionnalité d'inscription de retour dans Visual Studio. Nous commençons cet exercice en trouvant d'abord la vue de création pour les inscriptions supérieures. Et puis on va faire un peu plus de fracturation. Se réorganiser pour les champs juste par va paniquer. Nous avons un champ pour la cupidité. Nous avons un terrain pour le cours I D, qui nous a donné une liste déroulante avec tous les cours. Nous avons ah, terrain pour les étudiants, qui nous donnent une maladie de goutte pour les étudiants. Andan autre pour des conférences une fois de plus avec une drogue. Andi, au cas où vous vous demandiez pourquoi nous avons autant de listes déroulantes. Une fois qu'il y a une relation de un à plusieurs sens avec les inscriptions, c'est littéralement beaucoup d'orteil un. Avec tout cela,
tant d' étudiants peuvent être dans l'étable d'inscription. De nombreux cours peuvent être dans les écuries d'inscription et de nombreux conférenciers. Vous trouverez que dotnet dans l'échafaudage vous donnera des listes déroulantes. Auto généré vous donnant toutes vos options possibles sur tout ce qui est vraiment passe par
est le cours que je d.
Puisque c'est ce que la table des inscriptions est vraiment stocké est le cours que je d. de toute façon. Donc, vous voulez des listes déroulantes pour certains d'entre eux et pour certains hors de ces champs, Vous voulez les changer un peu au moment des inscriptions, alors nous n'avons probablement pas besoin de béton. Donc, en fait, la cupidité dont ils ne se souviennent pas dans la base de données que nous aurions autorisé Non. Quatre grade. Donc, au moment de créer une inscription qui est en train d'ajouter une classe, voir qui est la conférence et d'ajouter les étudiants, nous n'avons vraiment pas besoin de la note, donc je peux supprimer cela comme au moment de la création, souvent des inscriptions. Nous ne savons probablement pas qui est la conférence, donc nous n'avons pas besoin de la conférence que je dis maintenant. Tout ce qui est vraiment important est de spécifier quels appartements traitaient avec Onda, quels étudiants ou étudiants seront affectés à cette classe. La partie A de cette activité sera de rendre cette procédure entière assez dynamique pour que vous n'ayez pas le L'utilisateur n'aura pas les pieds jetés loin et le frère de retour chaque fois qu'ils veulent ajouter un étudiant, ils peuvent simplement sélectionner le cours et à d'autres parties et vers le haut la page s' actualisera. Mais nous ne sommes pas vraiment là pour l'instant. On a juste affaire à l'auto complète. Je suis référence d'hiver, la documentation DJIA Query Encore une fois, juste pour que nous ayons une appréciation pour le noyau que nous sommes sur le point d'écrire sur la pièce hors de l' auto. La documentation complète sur laquelle je veux me concentrer est un service de données Jason P distant. Donc on va utiliser Jake ou E E. Jackson. Vous les voyez ? Me préférences, de requête déduit, qui va effectivement appeler un lien ou appeler un point de terminaison Jason que nous allons à moi en ce moment qui va servir une liste de la date abus dans ce cas, la liste des étudiants basé sur ce qui est serré. Donc, l'exemple ici est qu'ils ont une bête de données sur les oiseaux sur. Ils ont un euro pour la recherche et leur spécification du type de données sur ce qui doit être recherché. C' est donc ce que beat représente le terme à rechercher alors, lors d'une requête réussie, Andi, il retournera les données et ils montreront les données tout droit, puis quand on est Cilic, il de sorte que ce n'est en fait qu'un événement dans tout ce processus. Donc, la source des données sera terminée. Ajax loin, ils voient la longueur minimale pour n'importe quel trimestre de recherche devrait être trop. Donc, deux caractères et puis vous déclenchez la recherche sur, puis voulu sélectionner. Puis ils souhaitent orteil droit à l'amour que vous avez choisi ceci avec cette valeur et que je d Maintenant, commençons nos voyages. Je vais taper ce truc de script. C' est la troisième partie de mon fij underst le mettant en haut ici hors des vues, nous pouvons avoir une section distincte pour moi, probablement plus tard en extrayant ceci et en mettant un fichier de script et des références directement. C' est très bien. Mais pour l'instant, je suis juste interrompu la menace ici. Et parce que Jake s'inquiète parfois, tu commencerais les taquerias. Les points de document sont prêts. Vous pouvez en fait simplement voir la fonction de signe dollar sur. Puis tu ouvres près. J' aime simplement fermer mes fonctions en même temps. On se réchauffe juste ici. Mais avant même de commencer à écrire Jake, où nous devons nous assurer que nous avons les contrôles appropriés ou ce que nous sommes sur le point de faire maintenant, rappelez-vous que nous voulons être en mesure de taper le nom des étudiants et nous avons une liste déroulante fonctionne avec donc nous ne pouvons pas taper le nom de l'étudiant avec un bonus de drogue. Et il y a un autre facteur à cela que la liste déroulante est en fait le suivi des étudiants i d. Une zone de texte ne sera pas suivi. L' idée des étudiants sera de suivre le nom de l'étudiant. Donc, afin de faciliter la nécessité pour l'utilisateur de voir le nom dans une zone de texte sur la
solution réelle pour obtenir une idée pion la soumission hors du formulaire. Nous devons apprendre à cette avoine Anderson à effacer ça et je vais la remplacer par deux contrôles une boîte de texte. Onda Champ caché. Bon, donc j'ai fait ça très vite, et j'ai juste traversé les deux lignes à l'extérieur du tribunal, ce qui ne devrait pas être aussi étranger. Nous avons notre aide HTML ici et nous utilisons une édition pour que vous auriez pu utiliser une zone de texte pour C'est bien alors vous réalisez qu'ils ne sont pas de moi hors de l'édition pour et les manuels étaient un peu différents quand il s'agit de référencer sur CSS mais de toute façon, ils ont tous les deux besoin du modèle Andi. Nous associons la zone de texte à des élèves de point de modèle. Ce prénom sur la raison pour laquelle j'utilise le prénom est que nous n'avons pas utilisé la
colonne de nom complet chez les étudiants qui ont utilisé le prénom et le nom de famille Andi. Je vais juste l'utiliser parce que j'ai juste besoin d'une zone de texte. Il y a Remember the edit for Is Going toe donne un contrôle qui est en accord avec n'importe quel type de
données que nous vous disons que nous en avons besoin. Donc, dans ce cas, c'est un texte. On va prendre une boîte de texte. J' aurais pu utiliser le nom de famille si j'avais utilisé un modèle de vue, qui serait une abstraction de l'entité réelle venant de la base de données. J' aurais pu inclure un champ de données de nom complet dans ce champ sur puis utilisé nom complet. Il y a donc plusieurs façons de le faire. Je suis juste en train de garder ça simple. Euh, donc ils pensent qu'il s'ouvre plus tard dans le parcours, en fait voir les modèles, et donc vous pouvez créer cette obstruction en direct, mais pour non, restons juste à ça. Donc, nous avons un modèle que pour Student ce prénom et puis nous lui donnons juste quelques nouveaux attributs
HTML Andi, y compris la classe formée US Control, ce qui lui donne ce bootstrapping, puis la deuxième ligne est un champ caché parce qu'on veut un camion. L' étudiant i d. Lorsque l'étudiant est sélectionné à partir de la liste déroulante complète une fois de plus, cette boîte de texte complète automatique va seulement nous montrer le nom. Mais ce dont l'application a besoin est le i. D. Donc, nous utilisons juste un caché pour que l'utilisateur n'ait pas à voir le 123 à l'2000 et quel que soit l'étudiant I d. valeur est. Donc, nous cachons ça à l'utilisateur. Mais quand le formulaire est soumis, est
ce dont le modèle a vraiment besoin. C' est ce que le contrôleur a besoin de voir. Nous pouvons juste jeter un coup d'oeil sur l'option de post pour créer cela. C' est vraiment juste vouloir l'étudiant que je ne me soucie pas du prénom sur le nom de famille. Très bien, donc c'est de trouver un équilibre entre donner à l'utilisateur une interface visuellement acceptable pour s'assurer que notre solution est une rupture sur le maintien de l'intégrité des données que nous traversons. D' accord, donc tu as modifié ça sur. Nous avons juste pris toute la boîte déroulante, et nous avons ajouté prend des mois, ce qui va servir le but de nous avoir faciliter notre
fonctionnalité complète automatique sur ah, caché pour lequel est juste de suivre le i d off l'étudiant qui est sélectionné dans ce manuel
complet automatique. Maintenant, de retour dans la requête J, um, moyen peut en fait juste aller à la documentation et probablement copier en paix. Donc, ce score sur le changement que nous allons le long, son comprendre pour saisir rapidement une partie de cela à distance ajuster comme je vais le long. Très bien, donc nous avons notre corde Onda. On va commencer à se fracturer l'orteil ou des fins. Le premier changement est les éléments cibles maintenant dans Jake. Ou vous pouvez cibler tous les éléments à l'aide de la
valeur I. d. Tout comme dans les aides C. Quand en CSS vous voulez l'élément par I d utiliser le hashtag ou si vous voulez par point utilisateur de classe Donc, dans cette situation, vous pouvez réellement le référencer dirigé par le i d. L' utilisation du hashtag sont directement par le nom de la classe en utilisant le Mais dans ce cas, ce que nous voulons cibler est le quatre Édition et ensuite nous avons le prénom de point d'étudiant. Donc, en d'autres termes, quelle que soit la valeur du modèle ici qui détermine l'i d hors des éléments. Donc, le i d de cette liste déroulante est bien, dans ce cas, cours I d le i d pour 84 est étudiant. Pas que ce soulignement Quand vous avez cette entité sur sa propriété, alors c'est généralement ah, sur le score. Donc c'est une petite zone grise. Mais je vais passer en mode débogage et vous montrer comment vous pouvez déterminer quelle est cette idée sera, dans ce cas, la cachée pour ses idées. Étudiant i d. Donc je suis juste envie d'être plus audacieux sur vous montrer les i ds comme ils ont rendu. Bon, donc c'est à quoi ressemble notre page de création en ce moment, après avoir dépouillé, dit à d'autres listes déroulantes sur nous avons des idées de cours. L' étiquette que nous savons que nous pouvons changer en utilisant nos classes de méthode sur. Nous avons étudiant i d sur ce que nous voulions déterminer était le i d pour ces éléments, qui est une zone de texte donc je peux juste y aller et inspecter l'élément Et puis en regardant ce qui est rendu ici, je peux voir que l'i d pour l'élément est étudiant. Le modèle est le prénom de point d'étudiant. Donc, au tribunal, ce serait le prénom de point étudiant, mais ce point est un élément illégal dans une idée en HTML. Donc, ce qui est rendu est en fait que vous n'avez pas souligné d'abord moi donc nous pouvons juste sortir des gens plus rapidement ou nous pouvons supporter les gens plus puisque ce que nous sommes sur le point de faire
va également modifier l'interface Donc nous pouvons juste changer cet élément cible de étudiant sur le score prénom et puis nous voyons que nous suivons le tribunal qui se termine automatiquement, qui appelle la fonction auto complete sur les éléments cibles. Maintenant, l'étape suivante consiste à changer le u R l qui est référencé. Allaient orteils ont notre propre Europe sur. Tu dois gaspiller les produits ? Vous pouvez l'écrire en utilisant la reconnaissance d'aide HTML. Il suffit de l'écrire en utilisant le même motif off barre oblique sur in point. Donc, je vais utiliser la méthode stash in point où nous sommes allés voir une barre oblique et je voulais dans les inscriptions. C' est le contrôleur, non ? Donc, ce serait des inscriptions slash Qu'est-ce que l'action vous et je vais l'appeler. Obtenez des étudiants. Donc, nous devons aller dans notre contrôleur d'éléments de contrôleur plus tard. Faites une action qui sera appelée chaque fois que cette fonction est impliquée. D' accord, sur le type de données, on peut juste modifier ça pour Jae Sun. D' accord ? Jason Pisa est spécialisé. Ancien So Jason a vu un peu plus à l'aise en utilisant Jason. Vous pouvez le tester avec l'un ou l'autre et me faire savoir comment cela fonctionne. Et puis pour les données, vous devez spécifier quoi ? Le nom de la variable qui va contenir les données entrées dans cet élément. C' est le nom. Cela signifie donc que lorsque nous construisons notre jeison en point, nous devons nous assurer qu'il est équipé. Onda s'est préparé à prendre une variable appelée terme sur la valeur que nous passons sa demande ce terme. Donc ça pourrait vraiment être n'importe quoi. Ce sera tourné. Cela pourrait être une requête. Vous savez, quoi que vous vouliez l'appeler, assurez-vous que lorsque nous mettons en œuvre cette action, nous avons une facilité pour reconnaître que c'est un paramètre transmis. Nous en arriverons donc bientôt à ce point. Je construis tout ce record de Jaco ligne par ligne. La fonction suivante est le succès, et le succès est essentiellement impliqué lorsque la source a apporté avec succès, mais les données et donc succès de Hunting dit données sur ce que je vais faire ici est à une glande debo semaine. Donc, en déclarant, vous savez, si vous n'obtenez pas vraiment un outil de débogage comme Visual Studio pour le prendre ligne par ligne, donc ce qui est une bonne technique est de recevoir. Console ce journal et puis vous pensez, juste mettre n'importe quelle valeur à est que vous voulez écrire sur la console et ce conseil
serait les arrondissements ou la console. Donc, quel que soit le frère qui utilise dans cette affaire prouve qu'il a toujours un dessus de crayon ici, et vous voyez qu'on a une erreur ici et je vais vous expliquer cette époque. Mais quand nous consolons cet amour, quelle que soit la valeur que nous voulons voir imprimer ici, vous pouvez juste voir là, et c'est ainsi que nous allons de l'avant et construisons sur le débogage et nous assurons que les valeurs que nous attendons sont les valeurs que nous récupérons. Nous pouvons laisser la longueur minimale que les propriétés. Donc, cela signifie que cela n'impliquera pas l'auto-complete jusqu'au minimum aussi. Les personnages sont entrés dans la boîte de recherche sont les éléments qui, dans ce cas, est les étudiants sur le sport. Le prénom sur la sélection verra. Que voulez-vous que je fasse lorsqu'une valeur a été sélectionnée ? Cela prend deux paramètres événement qui dit, quel était l'événement que j'ai été déclenché Et vous j'ai une requête ou des données, quoi qu'il en soit, et c'est n'importe quelle valeur est retournée, le succès ou n'importe quelle valeur est en cours de sélection. Donc je vais juste mettre une console qui aime ici une fois de plus juste pour que nous puissions nous assurer que nous récupérons des données sensées. Je veux sortir des gens plus rapidement, et je vais expliquer cette flèche. Laisse-moi l'évoquer rapidement. Donc, cette flèche dit essentiellement que oui, vous essayez d'initialiser quelque chose quand il y a un problème de référencement, et je l'aurais dit plus d'une fois. Et si nous pouvions que nous voyons que le problème de référencement est juste ici bien commencé. On n'a pas bien rafraîchi, donc c'est dedans. Ce problème de référencement est juste là à notre fonction. Invocation. Et c'est parce que et je vais parler pleinement Hey, c'est la source pour qu'on puisse le voir. C' est parce que, ou script ici est en cours d'exécution isolée. C' est un geek s'inquiéter de la cour plus profonde et des agents sur. Nous l'exécutons en haut de la page quand nous sommes amis dans G requête à la fin de la page. Et rappelez-vous que j'ai dit que la séquence compte. Donc, ce qui doit arriver, c'est que ces scripts doivent être référencés au-dessus de ce bloc sur DSO . Tout allait bien, donc je vais sortir des gens plus. Allez à mes mises en page le jour. Je vais juste déplacer les FC. Comme je l'ai dit, vous avez un certain nombre de techniques poignée d'orteil. C' est ça. Vous voyez un certain nombre de façons. Je vais juste déplacer mes fichiers de script vers le haut de la page. Tous les droits sur les genoux, modernisateur. D' accord, donc j'ai toutes mes étoiles et tous mes scripts rendus en premier. Et puis au moment où tout aurait été rendu et qu'il arrive au corps ou à la vue, rappelez-vous que la vue est rendue là, et dans ce cas, c'est la vue que ce script aurait déjà été prises. soucier en termes de quelles bibliothèques préalables Il a besoin de la référence pour faire la concurrence
automatique sur les fonctions de requête G. Sachez que j'ai fait la partie JavaScript. Je vais modifier mon contrôleur et ajouter l'action, et je vais juste l'ajouter en dessous de la suppression confirmée. Et nous allons taper ça si vite. Donc, tout d'abord, j'ai précisé que je voulais que le type d'appel soit affiché. Je ne l'ai pas fait. Donc, je vais modifier que nous voulions être une cause de poste. Donc, on va juste dire, taper. Nous sommes juste dans les guillemets post. Donc, notre euro devrait être appelé en post, puis dans mon contrôleur, je vais modifier le noyau sur Ajouter sur h et mettre la fonction de résultat Jason du peuple. Donc, pour savoir que nous aurions vu des résultats d'action à chaque fois. Non, nous avons besoin des résultats Jason. Nous avons un public et c'est J fils, et vous voyez que cet intérêt est d'aider votre seul. Donc, ils nous donnent une fonction intégrée qui peut revenir. Jason résultats et j'ai dit que la fonction devrait être appelée Get Students. Donc je m'assure juste que ça renverse son chariot Aan den. Ce que nous transmettons est un paramètre appelé que vous vous souvenez de ce terme ? Donc, nous sommes séparés terme de chaîne de métal et puis cette fonction nous allons à la libre de variable appelée étudiants Onda nous allons faire juste courir avec requête alors Mais je sais que nous devrions savoir que les soucis d'espoir fonctionnent parce que nous avons été échafaudage Nous avons été modifier le tribunal sur DSO Nous voulons juste courir une semaine ou deux. Je vais juste voir un DVD points sur quelle table les étudiants récurrents et ensuite utiliser ne sont pas opérateur à nouveau. Et puis nous allons aller dans certains hors de la nature dynamique hors lien vers différents travaux sur DSO. Nous allons déclarer un objet abstrait avec les valeurs de données dont nous avons vraiment, vraiment besoin pour cette opération. Encore une fois, les deux valeurs de données dont nous savons que nous avons besoin sont le nom réel, qui devrait populairement, cette zone de texte sur le I d dont nous voulons placer la valeur dans les éléments de thèse. Nous savons, cependant, que nous ne pouvons regarder qu'un élément à la fois lorsqu'il libère le nom soit le
prénom ou le nom de famille le jour. L' idée. Eh bien, c'est là. Donc, ce dont nous avons besoin, c'est le nom et je dois être très complet dans notre recherche. Nous voulons nous assurer que lorsque nous tapons deux lettres, cette combinaison de lettres doit être dans le prénom ou le nom de famille, pas seulement le prénom. Donc, même si nous utilisons les prénoms ici, nous ne voulons pas limiter notre auto-complete juste prénom. Donc, une fois de plus, c'est juste parce que vous n'avez pas utilisé un modèle de vue, et je ne regarde pas le nom complet dans la possibilité de spécifier ce que les manuels devraient être . J' utilise juste des étudiants sur ce prénom. Si vous ne vous sentez toujours pas à l'aise que vous puissiez simplement utiliser un
type de champ de saisie régulier est égal au texte d'une zone de texte, alors vous pouvez dire que le I P est égal au nom de l'étudiant sur vous. Donne-lui la classe de bootstrap hors cours, et tu pourrais juste l'utiliser ici, non ? C' est juste que ça montre que le nom de l'
I.D. I.D. a été important pour l'opération qui était sur le point de se produire, donc je vais juste laisser ce morceau de côté. Cour ici a un point de référence, si vous le souhaitez, mais je vais continuer avec cela puisque vous passez tellement de temps à ventiler que si la télévision que les étudiants qui recueillent, ce qui m'oblige alors à mettre quelques paramètres. Et je dois d'abord spécifier les expressions Lambda. Q. Voici où je peux déclarer un nouvel objet qui ne ressemble pas nécessairement objet
d'un étudiant. Quelqu' un à voir nouveau, parce que je veux un nouvel objet abstrait avec mes propres valeurs. Donc Q pointe vers un nouvel objet sur. Je vais remplir cet objet abstrait avec un nom Andi pour le nom que je vais voir que tu as . Et puis rappelez-vous, le Q me donne accès à toutes les propriétés hors de ce qu'ils regardaient. Donc, avoir Q ce prénom, et je vais le faire ressembler à un nom complet, quelqu'un pour planifier chat dans un prénom le dernier jour dans et dire point mignon sur le nom de famille sur off pour mettre un peu d'espace là donc il semble convivial. Donc, c'est le nom complet de l'étudiant sur alors nous voulons aussi sur i d. Donc encore une fois, cet objet abstrait me permet de déclarer toutes les propriétés que je veux à la volée, puis il construira ces objets sur Mettre la liste hors d'eux dans cette variable étudiants . Bon, donc je serai égal aux points de chaussures. I d étudiant I d plutôt sur la droite La racine de ledit une fois de plus de notre base de données et notre table d'
étudiants sélectionner dans notre nouvel objet. C' est à peu près ce que ça dit. Sélectionnez ces propriétés dans un nouvel objet sur cet objet brûlant a le
nom de la propriété sur Donnez-moi ces valeurs sur elle a un i. D. Donnez-moi ces valeurs et nous pourrions aller de l'avant et juste mettre autant d'autres propriétés que nous le souhaitons . Mais encore une fois, nous n'avons vraiment besoin que du nom et de l'idée. Donc ce sont les deux seuls que je sélectionne. Mais ce n'est pas fini là parce que rappelez-vous que nous voulons un filtre. Il s'agit donc de sélectionner tous les élèves en remorquage. Nouveaux objets avec le nom et I D. C'est bon, mais le fait est, nous devons filtrer sur le terme. Nous devons nous assurer que tout ce qui est retourné comme les étudiants a terme là-dedans, donc nous allons ajouter si nous pouvons utiliser pour vous sur la commande filter serait que canards. Et puis vous remarquez que les deux ne sont pas seulement ramasser le nom d'idée parce que c'est seulement essayer filtrer les
orteils sur n'importe quel nouvel objet dans lequel je viens de sélectionner toutes ces données. D' accord, alors je veux voir que nous sommes nom, qui est une combinaison hors prénom et nom contient andare expression est un terme qui est allé à parcourir tout cela une fois de plus. On a un souci. Um, nous stockons les résultats dans une variable appelée Students sur cette carrière est en train de regarder dans la table des
étudiants, et il sélectionne tous les enregistrements, mais il les reconstruit en remorquage à la volée. Modèle très abstrait que nous venons de créer. On ne lui a pas donné un nom qu'on vient de créer. C' est juste pour ce but. Et je dis que je veux le nom, ce qui sera qu'il reprendra le prénom. De plus, Andi a de l'espace vide et le nom de famille juste pour qu'il ait l'air convivial. C' est un nom complet qui aurait pu appeler ce nom complet si je le voulais. C' est vraiment à vous de choisir. Je viens de mentir, mec. En tant que nom sur. Ensuite, nous sélectionnons le I D sur nous disons que le I d devrait avoir les étudiants i d. et ensuite nous allons filtrer tout ça. Tout cela sera filtré si le nom est
retourné, Adolescents ce terme et puis à la fin de tout cela, nous devons revenir parce que vous avez remarqué que cette ligne rouge était là tout ce temps. Nous avons un Jason résultats de la pour revenir. Il va être un peu différent. Donc on va voir un retour au soleil allumé. Nous voulons revenir sont des étudiants variables sur nous juste passer toutes ces méthodes que nous devons fixer. Très bien, donc nous retournons un résultat Jason de cet objet ou un ensemble de ces objets en tant qu'
objets Jason sur . Nous ajoutons juste dans ce comportement toe beaucoup obtenir nous pouvons construire et juste nous assurer que nous n'avons pas d'erreurs. Très bien, donc ici dans notre navigateur va juste tester et voir si tout va bien avec ou des appels de fonction. Nous pouvons rapidement regarder DSI. Les étudiants que nous avons dans nos parties de base de données ont ajouté un peu plus afin de créer Rappelez-vous que notre droit froid ? Non, c'est juste une surveillance par une console qui aime ce qui se passe à chaque étape. Donc, lorsque la source réussit, l'initiale écrit le Beetle qu'il ramène à la console aussi, si quelque chose est sélectionné. Mais en ce moment, je pense que nous ne pourrons voir ce qui revient à la console autorisée. Donc, si je touche t, vous savez qu'il n'y a rien qui se passe parce que ce n'est pas une longueur minimale de cinq p, alors vous voyez la longueur minimale et vous voyez qu'il y a une action qui se passe. Mais si on descend dans la console, on voit qu'elle ramène des données pour nous. Si je trace E A, il ramène la pizza à nouveau sur vous voyez que c'est vraiment juste filtrage basé sur ce certain
savon que nous apportons sur le nom que nous apportons sur le I d. Comme nous avons spécifié dans notre objet abstrait que nous avons vraiment seulement besoin de nom et je d. Ce que nous devons faire est d'afficher la liste déroulante réelle afin que nous puissions cliquer et sélectionner cette valeur ici, mais en arrière-plan. Bien sûr. Cette valeur d'idée dans notre art de champ devrait donc retour dans notre application et a fait un changement ici rapidement et je viens de marcher à travers tout le point off source ayant des paramètres orteils, demande et réponse. On les a appelés comme ça, mais on les a vraiment nommés d'après quoi ? Par conséquent, la demande est ce qui sera transmis sur les réponses. Qu' est-ce que C ? Donc, ce qui est reçu revient avec succès sur l'utilisation de notre fonction de réponse. Nous pouvons réellement marquer certains éléments de données, qui aurait été ce qui est retourné. Donc la date est sur ary off les résultats de la recherche. Donc, la réponse est en train de balader tous ces éléments de données. Andi, j'appelle Ah, je passe chaque enregistrement de cet ari dans cette fonction et je retourne une valeur d'étiquette hors de l'élément ce nom. Rappelez-vous donc que l'élément ou les données auraient honoré les objets qui ont i d et ont besoin. Donc, chaque élément ici va avoir un nom, puis je d. Donc ce que je fais est de retourner des objets avec Mabel sur la valeur sur une étiquette I D et une valeur particulièrement importante pour ce qui est affiché à l'écran. Lorsque les noms apparaissent sur le médecin, os
lâché semble utiliser. L' étiquette est ce qui apparaît dans la build drop et lorsque vous cliquez sur les champs de texte, la zone de texte, alors ce serait la valeur. Donc vous ne voudriez pas les changer de nom. Puisque le nom est ce qui devrait être vu dans les deux situations,
cependant, cependant, I D une fois de plus est juste pour des fins gémissées si bien, Dr Interface. Andi, j'évoque la console pour voir ce qui se passe. Ensuite, je vais commencer à taper alors rappelez-vous rien sur deux personnages voyage saucy. Et là, vous voyez qu'il apparaît si je tape Will. Très bien, donc c'est en fait la recherche du nom complet pour n'importe quelle voiture à séquence. Et vous voyez que pour chaque résultat réussi, nous récupérons cet objet de données bien, Quelqu'un pour en sélectionner un et se rappeler que nous avons une console qui aime le suivi lorsque nous sélectionnons et que c'était qu'il était tiré là dessus. Nous voyons ici que nous avons l'objet article avec l'étiquette, qui aurait été ce qui est affiché quand il a frappé la valeur que vous remarquez va dans la zone de texte sur le I. D. Donc non, nous Il faut écrire un tribunal pour s'assurer que notre champ caché soit peuplé avec cette Aggie. Parce que si on le regarde spécifiquement, il y a rien qui change. Nous avons le champ caché et il n'y a pas de valeur, accord, qui n'est pas ce que nous voulons. Nous voulons donc que lorsque nous sélectionnons ce nom, la valeur de ce champ caché soit mise à jour. Donc, de retour en studio visuel, nous allons modifier notre fonction de sélection. Alors mettez à jour l'élément en question et l'élément en question est les idées des étudiants. Alors quittez la console, cette longue carrière sur ce que je vais faire est de voir le panneau Open British Seins kits et
marques de pétition . Étudiant I d sur D. J Où il est facile pour nous un ensemble de valeurs afin que nous puissions simplement appeler la fonction de valve sur. Nous venons de passer la valeur que nous voulions dire que pour que nous puissions voir les points de données. Eh bien,
désolé, nous avons nommé la requête Saluzzi Works points sur. Alors rappelez-vous que c'est en fait être beaucoup orteil sur l'objet avec l'article sur l'article a le nom sur Di. Donc, vous avez besoin de points de requête. Salut, Tim. Des points sur. Je vais spécifier I avec des clés communes, car cela est modifié ici. Donc sa valeur navale sur l'idée. Donc, je mets la valeur hors ou étudiant de terrain caché. Je l'ai fait, je l'ai fait. Rappelez-vous que cela se produit chaque fois qu'un événement select est déclenché. Donc, je comprends généralement revenir en arrière, rafraîchir. Et vous essayez encore ça sur Juste regarder la valeur pour le terrain et leur ego. Vous voyez, il est en cours de mise à jour. Donc si je dis test, nous avons ces deux-là. Il est mis à jour à chaque fois. Donc non, nous savons que nous sommes en train de suivre la valeur de l'étudiant sélectionné. Maintenant, encore
une fois, notre objectif est que nous aurons ce discours sur ce bouton de création sur quand nous pourrions créer, nous voyons un rafraîchissement dynamique et recharger hors de la liste des étudiants actuellement
associés à cette force. Donc, pour non, je vais juste en sélectionner un dans la liste déroulante et je vais m'inscrire, tester étudiant dans ce sur eux avec le clic créer, et puis nous voyons ce qui se passe. Ok, désolé. J' ai eu un point de rupture sur ce morceau hors cour. Mais si nous allons ici et regardons l'objet, vous voyez que nous passons l'essentiel ? Bien sûr que je n'ai pas, non. Mais nous avons fait beaucoup de choses. Non, pour la conférence i d et pour la cupidité sur les étudiants est obtenir de sorte que les deux parties les plus importantes ce modèle particulier sont obtenir des données. Donc, si nous mettons cinq et
continuons, nous serons réacheminés vers les inscriptions dans ce discours. Maintenant, encore
une fois, nous allons apporter quelques modifications à ce processus complet afin qu'il ne revienne pas ici à chaque fois. Et puis nous devons créer de nouveaux Nous aurons effectivement une vue partielle de la liste des étudiants inscrits, rafraîchissant chaque fois créer, ou chaque fois que cela a changé, il actualisera le spectacle. Exactement qui est inscrit dans la classe sélectionnée sur Une fois qu'un étudiant est entré ici et sélectionné, il actualisera les avoir dynamiquement sans s'éloigner de ce discours
21. Créer un formulaire JQuery/Ajax: Hey les gars, Dans cette vidéo, nous allons regarder mettre en œuvre sur le formulaire Ajax pour ou application. Maintenant, la raison pour laquelle nous utiliserions un formulaire Ajax qui est un mécanisme JavaScript, est de réduire le nombre de recharges pour nos pages. Non, rappelez-vous que lorsque nous créons une inscription, nous voulons orteil le Anamika Lee une recherche pour un étudiant, ce qui est pourquoi nous avons mis en œuvre ici, Jake, où vous êtes widget complet automatique dans ou boîte de texte Andi orteil agir trop dysfonctionnel à ce que nous allons faire est de mettre en œuvre ce que nous appelons un formulaire Ajax maintenant sur le formulaire Ajax va effectivement réduire le besoin pour nous de rafraîchir entre cliquer ou soumettre le bouton pour rappeler que chaque
fois que nous cliquons réellement créé est mis en place dans le contrôleur pour accéder à notre liste. Ce que nous voulons faire est de permettre à l'utilisateur d'entrer et d'entrer en permanence sur cette page sans avoir besoin de naviguer et de revenir. est donc là que la forme Ajax jouera un énorme avantage. Maintenant, la première chose que nous allons vouloir faire est en fait inclure certaines bibliothèques Jeker et nous
allons le faire via de nouveaux get. Nous allons donc passer à notre projet. Cliquez avec le bouton droit sur Aller à l'argent peut obtenir des paquets parce que vous ne les avez pas installés. Nous allons en fait aller chez Bro et nous allons chercher Jake Worry sur E Juckes obtrusive afin que nous
puissions simplement taper. Je suppose que vous pouvez simplement taper des déductions sur juste en tapant des éjects. Le résultat principal est notre bibliothèque que nous recherchons. Donc, Microsoft que j requête sur la vérité sur rejet obtrusif afin que nous puissions juste aller de l'avant et cliquez sur installer sur DeLone. Tu peux faire son truc, accord. Et avec le succès de cela, nous pouvons juste confirmer dans le dossier Over Scripts que nous savons avoir Jake où point Unobtrusive. C' est soit un peu trop nouveau feu que nous nous attendons à voir Afternoon Get a terminé son installation. La prochaine chose que nous voulons modifier est notre bundle convicts, donc nous voulons créer un nouveau bundle quatre ou de nouveaux fichiers de script. Je suis juste dupliquer ce JIA Carolina nommé le Jake ou Dash Ajax et au lieu d'
essayer de re taper ceci. Je viens de copier le nom du fichier ici dans l'Explorateur source et juste le coller à l'
exposant tout le processus de frappe après avoir enregistré cette configuration lyinto sur bundle. Ensuite, nous voulons laisser ou page de mise en page savoir qu'il y a un nouveau bundle intones. Je viens d'inclure sur les genoux notre soucis Jake mentant. Alors rappelez-vous, l'ordre compte. Tant que c'est sous le geek ou la terre, alors vous ne devriez pas avoir de problème. Donc Jay Curry plat Ajax est notre nouveau paquet qui doit être rendu. Maintenant, nous pouvons appuyer sur over create view, puis nous allons commencer nos modifications. Donc, la première chose que nous voulons faire est de changer le type de formulaire afin que nous puissions voir que nous
utilisons HTML qui commencent le formulaire n'importe où, en utilisant un HTM normal de formulaire. Le nouveau type de forme dans le ton est un jack soucoupe Ajax juste ici placer HTML sur. On commence sur la forme Ajax. D' accord, donc nous voyons qu'Ajax a une petite erreur sur le net et c'est principalement parce que notre forme
Ajax prend en fait quelques paramètres. Donc, nous allons aller de l'avant et remplir ces mentors de partie et vous guider étape par étape. Le premier paramètre est l'action de post. Donc,
quand le formulaire Ajax se soumet, il a besoin de savoir quoi dans le contrôleur dois-je appeler ? Bon, donc nous savons tous que la forme de l'uniforme par défaut appellera l'option de poste hors tout ce qui est dans le contrôle. Nous devons donc créer ici, ce qui rend le formulaire initialement activé. Ensuite, une fois que vous pouvez soumettre, il va automatiquement chercher la version http post de create Over avec le formulaire He
adopte et même avec le formulaire H M A, mais il est nécessaire pour le formulaire H Ajax. Nous devons spécifier quelle action devrait être appelée. Donc, je pourrais spécifier que je veux appeler create. Mais alors je vais le modifier un peu, et je vais en créer un autre, et il écrira cette action ensemble. Quelqu' un pour appeler cette annonce, les étudiants se sont mêlés. Nous devons spécifier quel contrôleur est celui-ci. Action insulte le contrôleur des inscriptions, et ensuite nous devons ajouter de nouvelles options Juckes, et je vais juste apporter la ligne ici pour que nous puissions juste le remplir en pleine vue. Maintenant, les options ressemblent plus à des propriétés de cette nouvelle classe, ou vous remarquez que cela obtient l'équipe de couleurs citant de Visual Studio que c'est une classe, donc nous ajoutons simplement des valeurs et certaines propriétés qui sont appelées actions Ajax. Donc, le 1er 1 que nous allons ajouter est la méthode http aujourd'hui, c'est que nous avons utilisé post , donc nous pouvons juste dire cela. Donc, il précise que nous voulons bout sur. Ensuite, nous pouvons dire sur le succès. Nous souhaitons faire une certaine action sur je vais l'appeler je l'ai fait Tout droit, Donc, cas de succès hors de cet appel post, alors nous voulons appeler cette fonction etune autre en cas d'échec. On veut faire celui-là. Il y a un certain nombre de propriétés que vous pouvez réellement implémenter dans la section Ajax Option . Andi, j'ai joint une conférence documentée indiquant chacune de ces options et comment vous pouvez les
exploiter. La prochaine chose que nous voulons faire est la mise en œuvre ou une nouvelle fonction appelée étudiants publicitaires. Oh, eh bien ou nouvelle action appelée aux étudiants, et nous allons juste sur notre contrôleur et je l'ajouterai en dessous de la
fonction de création de post existante . Donc, comme nous l'avons dit, cela va être un post http sur déjà juste savoir au cas où c'est la première année voir essayer le mot prop sur, puis appuyé deux fois sur. Cela ne fait que mettre en œuvre notre propriété. Mais c'est un moyen plus rapide de sauter le public et il peut juste s'asseoir dans le type que vous voulez. Ce n'est pas la propriété. Bien sûr, c'est en fait une personne sur le téléphone. Ensuite, nous créons l'action post chez les étudiants sur le terrain de golf. Ajouter des étudiants va prendre un paramètre ou un appartement similaire à la création existante. Mais alors vous avez été appelé que nous attendons seulement deux valeurs, vraiment et vraiment à partir de cette forme et dans les conférences précédentes, j'irais voir en cela en fait,
ce que cela fait est de commettre tout dans qui vient à travers le domaine n'est pas répertorié ici. Ensuite, il ne sera pas inclus dans le modèle over. Donc on va l'utiliser. Mais alors, on est en train d'aller aux pieds. Spécifiez exactement ce que nous voulons, qui sont le cours que j'ai d sur les étudiants, i d Ce sont les deux sent qui devrait vraiment venir de cette forme. Donc, pour ce Parlement, comprendre orteil, emprunter ce score rapidement depuis son très similaire. Sauf que je vais en fait juste préciser que je veux seulement le cours que j'ai sur l'
idée des étudiants . Puisque rien d'autre n'est vraiment ajouté à partir de ce formulaire. Non, pour cette action, je vais en fait faire un essai sur attraper. Donc, je viens de taper tendance en double top sur. Ensuite, il a rempli le reste de ce bloc froid pour moi, et ensuite on pourra commencer à remplir ou à faire la cour. Donc je vais suivre ce modèle parce que beaucoup de la cour qui a été générée pour nous est toujours applicable. L' état du modèle est valide, est en cours de vérification. Y a-t-il des données manquantes ? Donc, entre les valeurs d'outil que nous attendons, qui sont idée de cours et l'étudiant I d est soit hors de leur manque dans ce scénario, alors si elle est valide, alors nous nous attendons à ajouter l'enregistrement au retour. Les vues comprennent Copier cela. Et s'il vous plaît que dans ma tribu bloque. En fait, je vais modifier ça juste ressembler à ça. Je vais en faire une méthode asynchrone. Donc, je viens de mettre un évier, puis la tâche et envelopper ceci afin de me concentrer sur les fruits
suspendus simples et inférieurs de ce bloc hors cour. Ce que je vais faire, c'est essayer de faire cette opération. Si ça se sent, alors enseignez cette action. Donc, commençons par travailler sur la partie. Ce n'est pas le cas. Si l'état du modèle est valide, alors nous voulons toe. Ajoutez l'inscription, enregistrez les modifications. Mais alors vous remarquez qu'un type de retour ici est faux, parce que ce que nous devons faire est de retourner un fils G similaire au trou. On l'a retourné. Où est cette fonction ? Très bien, donc nous avions une fonction de résultat Jason ici sur nous sommes retournés aux objets G. Asan. Donc, nous devons faire quelque chose de similaire pour cela. Comme il s'agit d'un résultat Jason, nous allons modifier cette action pour être un objet Jason qui est renvoyé sur. Rappelez-vous qu'avec les objets Jason, vous pouvez réellement spécifier le contenu de ces objets en fonction de vos besoins. Donc, je vais spécifier notre objet personnalisé qui a deux paramètres. Le 1er 1 va être le succès, que j'avais l'intention d'être un lingot quelqu'un pour dire vrai parce que si l'état moderne est valide sur tout ce travail vendu, alors c'était un succès. Donc, je suis en train de passer un lingot pour dire que son succès est vrai sur aussi, J'ajoute un message que j'ai l'intention d'afficher à mes utilisateurs. Donc je vais voir que je vais dire que les étudiants ont ajouté avec succès et ensuite suivre le modèle de notre précédente fonction de fils G s, compris ? Pour passer le comportement de sous-classe Js. Bonjour. Obtenez Parmenter pour que notre objet Jason soit complet. Laisse-moi juste passer en revue ça. Nous essayons cette opération sur Si l'état du modèle est valide, alors nous allons aller de l'avant et à l'inscription à la base de données, puis retourner un statut de
réussite avec un message de succès. Donc, qui va laisser ou la ferme ? Non, tu te souviens, on vient de mettre en œuvre ça ou formel ? Non, sur la
base de ce qui est retourné que c'était soit un succès ou un échec. Nous avons donc le scénario de réussite. Nous avons besoin de mettre le pied dans le scénario d'échec. Donc, pour notre juste terre, nous pouvons en fait simplement copier ceci parce que ce serait une chose très similaire sur ce serait en dehors de cette déclaration parce que cela ne se fait que si elle est valide, et alors vous verrez des gens retourner cela autour. Peut-être que vous le retournerez pour voir s'il n'est pas valide, puis retourné un échec. Mais si c'est valide, alors faites d'autres choses. Donc c'est à vous de choisir. Mais je veux laisser ça tel quel. Donc, si c'est valide, alors il a réussi sur. S' il ne revient pas ou si cela échoue, alors il tombera à cette ligne. Donc, si elle est par défaut à cette ligne, qui signifie que l'état du modèle n'est pas valide, alors nous retournons l'état d'échec Ah. Donc notre succès serait en fait des chutes et le message serait lu différemment. Peut-être que les étudiants n'ont pas été ajoutés avec succès. Donc, si c'était à elle avec succès, alors nous attendons notre objet Jason. J' ai ah, vrai pour cette valeur et ce message. Sinon, il devrait le retourner dans la même Wien. Si une exception est levée ou qu'une exception est interceptée plutôt que ce que nous voulons faire n'est pas lancer parce que l'histoire se bloque en fait sont une application, mais nous voulons la gérer avec élégance. Donc, si vous n'êtes pas si familier avec un essai, attraper ce que ces Encore une fois, il essaie cette opération, et si toute cette opération se sent n'importe où, alors il attrape l'exception. Donc, alors vous pouvez voir d'accord, s'il y a une exception ou une flèche globale qui n'a pas été comptabilisée pour l'ensemble. Est-ce que je le gère ? La ligne à travers fait planter le programme. Dans ce scénario, nous ne voulons pas que notre programme se bloque. Vous voulez que l'utilisateur ait le même type d'expérience qu'il aurait eu s'il s'agissait d'une entrée non valide. Ensuite, nous voulions leur montrer que c'est le sentiment. On peut juste réutiliser. Ceci est la ligne de succès Andi voir quelque chose de différent et probablement donc je veux leur dire Toe, s'il vous plaît contacter l'administrateur er sur. Ensuite, nous pouvons probablement mettre dans les détails de la flèche. Vous voulez probablement leur montrer les détails réels hors de la flèche, car ce ne sont que des utilisateurs finaux. Mais si vous êtes plus avancé que vous pouvez probablement mettre comme un e-mail à déclencher après l' administrateur ou le Web master quand une exception est Scott afin que vous puissiez rester
au courant des événements hors du logiciel. Maintenant, il y a une autre chose que je veux ajouter à cette validation avant qu'elle n'aille de l'avant et ajoute un étudiant. C' est une vérification pour voir si l'étudiant est déjà inscrit à un cours particulier. Donc, ce que nous faisons est de permettre à quelqu'un de ou de créer une vue où permettre à quelqu'un sélectionner un cours sur puis le type de nom des étudiants, puis cliquez sur Soumettre sur. Ensuite, il appellera cette fonction passant dans l'idée du cours et les étudiants que j'ai sur puis
essayer de leur demander. Ce que nous ne voulons pas, c'est une situation où le même étudiant est ajouté au même cours plus d'une fois que nous allons mettre dans une validation ici pour ajouter cette
déclaration de validation . Donc, je suis juste juste un peu hors cour, qui va interroger notre base de données. Quelqu' un pour sauver notre est inscrit est égal à. Et puis je peux dire les inscriptions DB points. Et puis je vais utiliser une autre fonction de lien, qui s'appelle tout ce qui dit vraiment juste. Y a-t-il un enregistrement dans la base de données qui répond à la condition articulo ? Donc, en l'état actuel et il va dire, y
a-t-il des enregistrements à l'intérieur de l'écurie ? Donc, je vais construire sur cette fonction n'importe quelle fonction avec nos expressions Lambda que j'utilise, aussi, qui est notre lettre universelle pour les expressions Lambda, et je vérifie s'il y a un cours que j'ai dans notre table d'inscriptions. C' est le cours dont je viens. Ou modèles d'inscription. Voici notre modèle d'inscription qui arrive à travers notre périmètre sur je vois y a-t-il une idée de
cheval dans cette table qui est la même que ce sport que j'ai d que je suis sûr que oui par non, pas vrai. Si vous avez Internet, peu d'enregistrements et il devrait y avoir au moins un enregistrement. Peut-être, peut-être pas. Mais cela reviendrait vrai. Mais ce n'est pas tout ce qui nous intéresse parce que vous voulez savoir qu'il y en a. Bien sûr que je serais autant. Est-ce Onda dans le même disque où on a trouvé ça ? Qu' il y a un étudiant je d. C'est beaucoup nos inscriptions. Donc, cette ligne une fois de plus, est voir S'il vous plaît me dire s'il ya un enregistrement de ma table d'inscriptions Où le cours i d sur les étudiants. J' ai beaucoup l'idée du cheval et de l'étudiant que je viens à travers ça. Jason, demande étoile cette demande de poste à cette action dans cet objet modèle. Alors nous voulons dire si est inscrit, alors nous ne voulons pas les avoir. Donc, c'est dire est inscrit. Donc, je peux juste ajouter modifier cette condition sur la déclaration pour dire si les états sont valides
,ce , signifie que les deux propriétés qui sont nécessaires pour le formulaire sont là. Andi est inscrit, est égal aux chutes. Très bien, donc si elle est valide sur l'étudiant n'est pas inscrit, alors nous pouvons procéder. Donc, si l'un ou l'autre d'entre eux estime que l'orteil n'est pas vrai, alors il devrait poser que l'étudiant n'a pas réussi, et nous pouvons modifier. Cet étudiant CN est déjà à son Un étudiant est déjà inscrit, il est
donc bon d'avoir des messages descriptifs pour chaque étape afin qu'ils sachent exactement ce
qui se passe et probablement le champ blanc. Deuxièmement, modifié détecte l'échec du système Une fois de plus, vous ne voulez probablement pas dire aux utilisateurs qu'il y a une défaillance du système. Vous pouvez trouver un message gentil, gracieux à mettre leur, mais je vous donne juste les scénarios à mesure qu'ils viennent pour vous aider à orteil. Appréciez pourquoi nous avons des messages personnalisés pour chaque état. Donc une fois de plus, nous voyons
que nous sommes poules, cette inscription stable pour voir s'il y a un dossier qui a à la fois le cours I D et l'étudiant I d existant avant notre action actuelle sur. S' il est connu, alors nous disons juste retour OK que c'était réussi. S' il y a notre si un hors de ces valeurs est manquant, alors nous retournons tombe avec un échec sur s'il y a une flèche en faisant tout cela apparaît, alors nous allons attraper l'exception et juste revenir sur Aramis. C' est de voir qu'il y a un échec sans planter notre programme. Je comprends terme dans cette ligne un peu sur Die l'a dit de cette façon pour l'épeler pour au cas où vous êtes nouveau à voir forte et vous n'êtes pas pleinement familier. Mais alors nous pouvons en fait juste voir si n'est pas inscrit. Donc, cela évalue en fait à la même chose qui était là. Sache juste. Donc, si vous préférez l'écrire de cette façon, et de cette façon semble un peu plus court, Mais alors vous savez, tant
que débutant, vous ne pouvez pas l'absorber aussi rapidement que comment je l'avais avant, Mais je suis juste vous montrer qu'il peut pendant les deux façons, Donc, nous allons juste construire et nous assurer que nous n'avons pas d'erreurs. Nous pouvons mener notre projet sur. Je suis assis un point de pause ici à notre action de l'étudiant de l'annonce afin que nous puissions voir cela lorsque nous
cliquons sur Soumettre. Les données sont en fait transmises à cette fonction. Donc je vais juste faire un test rapide ici sur Dustin pour changer la propriété de liste déroulante sur je
ne vais pas mettre un étudiant. Je vais juste voir comment cela se comporte, Quelqu'un à cliquer sur créer. Nous voyons que notre point de rupture est actif. Si je passe la souris sur mon modèle d'inscription, nous verrons que nous avons le cours sur lequel je reviendrai. Rien ne reviendra pour nos étudiants. Je d Donc, si j'ai marché à travers le cordon sur le gars a marché jusqu'à ce que je suis arrivé aux déclarations autour la carrière et cela revient tombe parce qu'il n'y a pas d'inscription qui existe avec le cours I d être quatre sur l'étudiant I d être zéro sur. Ensuite, je vais continuer à marcher et puis vous voyez qu'il a ignoré cette instruction if complètement parce que l'état du modèle n'est pas valide car il n'y a pas de valeur fournie pour un étudiant i d. ce qui est requis en fonction de notre conception. Donc, il frappe nos objets Jason, qui revient qu'il y a un échec dans l'audition de l'étudiant sur il y a un message. C' est le sien. Ok, un étudiant est déjà inscrit. Parfois, ça peut ne pas raconter toute l'histoire, non ? Donc soyez très prudent avec le message, parce que dans ce cas, ce n'est pas un manque d'inscription, mais ce n'est pas la présence sur existant et romain, mais c'est le manque de données valides. Donc, vous voulez être très clair quand vous avez ce message, tout espoir que nous pouvons exprimer leurs cinq et continuer. Ensuite, nous regardons en arrière notre page Web et nous voyons que nous n'avons même pas navigué loin. Et je vais mettre dans un étudiant cette fois quelqu'un à taper pour les étudiants ou le type de celui-ci travaille toujours sur. Ensuite, je clique sur créer sur. Ensuite, nous avons atteint le point de rupture une fois de plus. Et si nous regardons dans notre objet, nous voyons que nous récupérons un étudiant. Je suis dans le cours I d sur d. Je vais juste mettre le point de rupture à la déclaration if rapidement, premier de cinq sur. Ensuite, nous frappons notre instruction if et nous voyons ici cette fois l'état du modèle est vrai car il est de retour valide à des valeurs valides. Pour le cours, I D et les étudiants sur est également inscrit est tombe, donc il n'y a pas de conflit quant à l'endroit où ce bloc de cours devrait aller par la suite. Si j'interviens, euh, et je vais juste sauter avant la séance du point de rupture sur la détresse à cinq heures. Ensuite, vous voyez qu'il a clignoté sur l'écran parce qu'il a fait cela. Puis il a fait ça parce que non, hors de ce champ, il est allé orteil cette partie de succès sur Avez-vous vu dans L'étudiant est à elle avec succès comme nous l'avons conçu pour voir une fois de plus. Si quelque chose hors de cette opération échouait, ce qui se serait passé, c'est qu'il aurait sauté vers le retour de l'île Cat que Jason Falls aussi. Donc, je ne peux pas exprimer un cinq et continuer et vous voyez que les pages se déplacent Rien n'a changé sur le terrain comme c'est qui est à ce stade est bon et mauvais sont sur quand je retourne à la liste. Je vois ici que l'inscription que je viens de faire a été couronnée de succès sur Oui, nous allons modifier ce discours parce que tel qu'il est, n'est pas très clair. Nous avons des colonnes incompatibles et des données médiocres, Donc, cela va être modifié bientôt, mais je veux me concentrer sur le fait que l'inscription ALS ajouté pour le calcul sur l'étudiant Tajiri lu sur la page elle-même n'a pas redirigé. Je devais retourner manuellement à la vie pour le voir. D' accord, donc ça veut dire que notre forme d'agents Ajax fonctionne comme nous l'avions prévu. Donc, si je cherche un autre étudiant, je veux qu'il soit en congé et je pourrais créer et je vais juste enlever mes points de pause à ce stade parce que je suis sûr que ça fonctionne. Ensuite, je viens de continuer sur la page, n'est pas actualiser la page n'a rien fait, mais alors je dois revenir à la liste et actualiser. Alors il va céder ça. C' était aussi une inscription réussie sur. Ensuite, si je prends crée à nouveau ayant déjà inscrit sur Ledford en calcul sur, je pourrais créer, vous ne voyez rien. Il ne se passe rien, non ? Eh bien, rien ne se passe visiblement Donc avec nos points de pause, nous aurions vu qu'il frappe le tribunal et il aurait évalué les chutes parce que cette inscription existe déjà et de la même manière, si je rafraîchis cette liste, alors vous verrez que cela ne se répète pas, peu
importe combien de fois nous pourrions créer, alors sachez que nous sommes sûrs que notre code fonctionne. Ce que nous devons faire est en fait aider l'utilisateur à être sûr que le code fonctionne parce que, comme je l'ai dit au début, il n'y a pas de repères visuels ici pour dire, Oh, c'était un succès ou c'était un échec. Non. Souvenons-nous que, sous notre forme, nous avions précisé certaines options pour le succès de l'ONU et pour l' échec, et ensuite nous n'avons mis que du texte ici, mais je n'ai pas tout à fait expliqué à l'époque ce que signifiait le texte. Donc, ce sont en fait des fonctions ou des noms hors fonctions qui devraient être appelées quand cela réussit et quand il y a un échec. Donc, ces fonctions seront réellement implémentées en JavaScript. Donc nous avons ici le bloc de script. Je n'ai pas besoin d'en créer un nouveau. Je l'utilise juste sur le clair une nouvelle fonction en JavaScript. Vous dites juste fonction et vous lui donnez le nom et j'ai dit sur le succès, je veux que la fonction ajoutée soit appelée. Alors rappelez-vous que retournaient réellement un objet Jason ici. Donc, c'est un nouvel objet qui a deux propriétés est le succès et le message. Donc je vais préparer ma fonction pour la perspective d'obtenir une réponse de l' appel
Jason. Donc j'utilise juste le mot augmenter notre réponse de ressources, peu importe ce que vous voulez appeler ça. C' est comme ça que je l'appelle. Donc, une fois que cela a terminé le traitement et il a récupéré la voiture ou la réponse, puis il a provoqué le téléphone affiché ajouté. Je laisse savoir que je m'attendais à ce que l'orteil tient sur l'objet dans lequel va correspondre
à ce qu'il est que je retourne. Donc augmenter ici va incarner les propriétés. Son message de succès Andi. Donc, je vais juste mettre en œuvre rapidement cela en allant mettre dans une déclaration if et voir si rez ancré est le succès. Ensuite, nous voulons utiliser une fonction de requête juive. Donc, le signe du dollar vraiment en vigueur que geek Oracle Andi sur ce formulaire a montré que je le veux. Donc, rendez quelques éléments HTML. Donc, je vais rendre les orteils sur l'élément que je vais appeler succès. Je l'appelle par I d. J'appelle le succès et je vais lui dire de se sentir vite. C' est donc l'une de ces questions de requête JIA. La requête G Meeks Jalous Krypton a battu, vous savez, plus facile et plus rapide à mettre en œuvre. Si vous deviez écrire javascript vanille pour accomplir quelque chose comme ça, alors cela prendrait probablement Ah, peu. Encore quelques lignes à l'extérieur de la cour. CJ Corée accélère en fait tout ce processus d'interactivité dans notre application. Et puis je vais juste copier ce cordon sur eux, ne vais pas implémenter une autre fonction et l'appeler champ sur dix Justin pour modifier cette instruction et voir si non, alors je veux que le champ rentre rapidement. Donc, je veux sur le succès sur l'élément appelé Désolé sur une annonce réussie. Ensuite, nous voulons un élément appelé Success pour alimenter Andi s'il se sent dans un élément appelé Field Feet in. D' accord, donc après avoir ajouté ces gars, j'ai réalisé que je t'aurais trompé avec quelque chose, et je vais t'expliquer ce que c'est après que je t'ai montré la cour. J' ai donc ajouté la vie pour le succès sur le terrain. Andi, si on a baisé la discrète ID 1, Dave 4 champ. Andi, je lui ai donné le bon cours pour qu'on puisse le cibler en utilisant le hashtag sur. Aussi, je lui ai donné l'alerte de classe sur alerte Angel de ou bootstraps qu'une boîte rouge apparaîtra sur l' affichage de notre flèche. Donc ce que j'ai fait ici était à la place d'utiliser le message provenant de notre réponse Jason un bateau ou l'étudiant a été ajouté ou non, et puis essayer de trouver une raison que je viens de donner ah ère de gros ici en statique, fixe pour voir là était une erreur lors de l'ajout de l'étudiant à ce cours et il pouvait voir S'il vous plaît vérifier vos données et réessayer. Ou contactez votre administration et expliquez ce que vous voulez ici dans un grand
texte général Onda aussi pour le succès que j'ai mis dans le message étudiant à elle avec succès. Donc, ce qui se passera est que sur le succès, nous appelons ajouté, puis ajouterons qu'il va vérifier si les messages de succès réellement vrai et ensuite rendre cette fonction. Si nous voulions ajouter le texte revenant du Jason, nous pourrions simplement ajouter le texte ici en utilisant JavaScript toe cet élément parce que Reyes
aurait soulevé ce message. Juste que je démissionne a soulevé ce succès afin que nous ayons pu dire. Nous voulons le succès de l'élément sur lequel nous voulons revenir. Ce que nous voulons redonner, c'est transmettre ce message. Donc, c'est comme ça que vous allez réellement adapter le message de flèche réel ou le
message de succès provenant de la réponse de fils d'orgie dans remorquer le contenu du faire si vous ne voulez pas faire de cette façon où vous avez le texte statique dans le diff, alors vous pouvez le faire de cette façon là où vous venez de l'injecter. Donc je te montre juste les deux côtés. D' habitude, je mets juste dans le texte statique, mais je laisse cela là pour votre future référence. Non. Quand j'ai dit que je vous aurais induit en erreur, je suis devenu un peu trop zélé et je devrais le faire en cas d'échec correspond à la
réponse de Jason . Et c'était dans son intégralité. Si infaillible. Er signifie en fait que si l'appel à l'action se sent une sorte de raison, ce
qui signifie que cela n'a pas été réussi, il a fait appeler les adultes et il ne pouvait pas trouver cela. Alors quelle époque voulez-vous montrer ? Donc, cette fonction serait effectivement appelée s'il y avait une défaillance totale du système. Lorsque vous essayez toe, appelez l'action Post. Donc, c'est ce qu'on veut dire plus loin. Donc, que ce ne soit pas du côté de la base de données, l'ajout de l'enregistrement a été réussi. Ou si dans ce cas, la façon dont nous avons écrit notre application, s'il y avait une exception en essayant de faire cette opération et qu'elle a attrapé notre réponse tant qu'elle renvoie une réponse, Le formulaire Ajax le voit comme un succès car il a envoyé des données et il a obtenu une réponse . Donc vraiment et vraiment, pour faciliter ce champ par rapport au scénario de succès pour l'ajout de nos propriétés pour la base de données de magasin d'inscription supplémentaire, alors nous devons le faire un peu différemment. Donc je vais voir l'échec ici, non ? Andi ? Je veux dire, je peux implémenter une fonction pour cela, mais je ne prévois pas, moins pour ce scénario, que ma mère aurait une panne totale du système. Mais ce que je vais faire est en fait modifier la fonction ajoutée donc en cas de succès. Que voulons-nous faire ? Et nous appelons, ajouté Non ajouté, n'est pas la raison pour laquelle nous vérifions son succès est que le succès peut être le vrai ou le faux parce que nous avons obtenu une réponse et c'est soit vrai ou faux Donc si c'est vrai, alors nous voulons afficher notre succès appelé en direct et puis je peux voir d'autre Donc d'autre. Signification rez n'est pas augmenter que le succès n'est pas vrai. Ensuite, nous pouvons appeler notre autre fonction, que j'ai décrit champ sur son passage dans le reste. Donc juste de la même façon que nous pourrions cibler ce Dave pour le succès et mettre dans le texte. On peut cibler ça. Voilà que je vais laisser ça là pour votre future référence. Encore une fois, j'ai mis dans le texte statique ici, donc je ne vais pas utiliser cela, mais n'hésitez pas à expérimenter. Donc, pour l'ajout, si cela ne réussit pas vraiment, en fait, je n'ai pas à faire des déclarations if. Donc si ça ne réussit pas, alors je veux appeler sentir. Il y a quelqu'un pour sortir ce bloc de la cour. Alors ce que je veux faire, c'est juste passer. C' est ce qu'on appelle un dysfonctionnement ? De sont comme section, donc c'est soit réussi. Andi a été ajouté et c'est un succès ou un orteil échoué. Ajoutez que c'est la base de données et donc nous allons afficher diff champ hashtag, qui est un live avec alerte danger. Donc, si elle a réussi que nous voyons alerte succès, et c'est là que vous commencez à voir un tout. Bootstrap rend facile pour elle d'afficher bizarre de diriger les utilisateurs avec très peu d'effort. Donc, une fois de plus, un
infaillible A signifie vraiment que s'il a essayé de faire appeler le post à cette action, ils ne pouvaient pas trouver que l'action peut être renommée. Il est juste vraiment ne pouvait pas communiquer avec le serveur. Alors c'est quand vous appelez échec pour que vous puissiez implémenter un autre fils Fung. Quatre. Échec. D' accord, d'accord. Donc de retour en mode débogage, nous allons tester la théorie que ou froid fonctionne donc une fois de plus sur un ajout
réussi sur l'inscription, et nous nous attendons à ce que nous allons voir, donner, apparaître sur le flux, insulter l'animation, et vous pouvez ajuster la vitesse sur. Vous pouvez simplement consulter la documentation geek inquiet pour voir les différentes options de vitesse. Vous pouvez dire lent, rapide, et je pense que vous pouvez dire moyen. Je ne suis pas sûr si le milieu de gamme sur de la même manière. Si cela se sent alors nous nous attendons à voir un rouge donner à l'affichage ou à l'échec de sorte
que nous allons juste essayer que quelqu'un d'essayer le scénario échoué d'abord Donc je vais juste cliquer, créer et évidemment cela devrait se sentir sur. On y va. Donc il le nourrit. Il y a eu une erreur, ajoutant l'étudiant à ce cours parce que nous avons un cours que j'ai suivi. Nous n'avons pas spécifié un étudiant sur. Ensuite, je vais essayer d'ajouter à gauche pour deux. Voyons voir un net d'accélération, validation
NBC. Et puis on pourrait créer sur. On y va. Donc nous voyons un petit *** dans notre coin. que nous devons faire, c'est être affiché simultanément, qui n'est pas nécessairement ce que nous voulons. Andi, tu sais, ce n'est pas idéal. Alors modifions un peu notre cour. Donc, je vais dire très bien, donc la modification, je veux dire, est de dire que si quelque chose est à elle avec succès, alors nous voulons disparaître, échoué ou vous pourriez juste dire, C'est affichage Toe tombe dessus. Tu veux le faire ? Je veux dire, il y avait plusieurs façons de faire ça. Donc, nous voyons juste s'estomper rapidement sur l'alimentation dans le succès sur Si elle échoue, alors nous voulons le fondre rapidement. Vous voulez juste savoir que quand il sent que vous ne voyez pas le successif et vice versa. Donc, comme nous pouvons voir plus de changements ici sur, puis réessayez. Donc, je vais essayer de créer ce champ, accord, donc je vais essayer d'ajouter à l'exploration de données sur le There on go, donc il n'en affiche qu'un à la fois. Donc, si je supprime cela sur recréer, alors vous voyez qu'il remplace la flèche avec le succès et vice versa. Donc, nous avons essentiellement ajouté que la forme de l'Egypte et ajouté un joli propre. Nous parlons beaucoup, les gens orteils, ajoutons des étudiants et les inscrivons à notre classe. Cependant, même si nous avons fait un peu de travail ici,
le travail n'est toujours pas terminé parce que nous voulons toujours moyen plus interactif pour eux de garder camion hors. Qui est dans quel cours signifie pour voir qui a été ajouté. Nous devons retourner à notre liste d'inscriptions ici sur. Nous devons regarder, alors nous ne voyons pas le parcours, mais ensuite tout est mélangé. Oui, nous pouvons faire quelques modifications de carrière pour le rendre ordonné par le style de la cour et ainsi de suite, mais c'est toujours un peu mélangé donc dans la vidéo suivante. Ce que nous allons faire est de modifier leur, alors modifiez nos étiquettes hors cours. Nous allons également modifier toute cette création vous qui, fonction du cours qui est sélectionné, nous verrons un tableau ci-dessous avec tous les étudiants de ce cours sur. Lorsque nous modifions cela, il actualisera cette vue ou cette partie de cette vue sur montrer uniquement les étudiants par rapport aux cours sélectionnés dans cette liste déroulante. De plus, lorsque nous ajoutons un étudiant avec succès, nous nous attendons à ce qu'il soit reflété dans cette liste immédiatement.
22. Affichage partiel et rafraîchir les données: il y a dans notre dernière vidéo, nous avons terminé notre création sur le formulaire Ajax que je nous charge orteil plus dynamiquement, soumettre les inscriptions des étudiants à chaque cours sur fait. Dans cette vidéo, nous allons passer par l'ajout d'un rafraîchissement automatique pour chaque forme de mission. Alors que se passe-t-il ? Non, c'est que nous obtenons un repère visuel chaque fois qu'un étudiant est réussi ou non, ajouté
avec succès, Cependant, nous ne savons pas qui est ajouté parce qu'il n'y a pas de liste ici pour l'affichage. Il faudrait revenir à la liste sur la vue des inscriptions à chaque fois que nous voulons, éviter. Et donc ce que nous allons faire est d'améliorer la forme actuelle de sorte que chaque fois qu'un étudiant est ajouté avec succès, cupidité ne sera pas ici montrant la liste des étudiants et il se rafraîchira. En plus de cela, nous examinerons le concept des formes partielles. La première modification que nous allons faire est de changer les étiquettes ou les contrôles ici
sur le formulaire en studio visuel, j'ai ajouté la classe de théâtre Amita pour la table d'inscription sur. Nous l'avons fait lors d'une conférence précédente, donc je l'ai fait cette fois-ci pour la table d'inscription. Mais vous remarqueriez que je l'ai fait à l'attribut de données remorqueur pour les ID. Cependant, sur notre page, ils ont encore dit Students idée et cours I si longue histoire courte, le nom d'affichage. Cela ne fonctionne pas vraiment pour les idées, mais ce n'est pas un problème, parce que nous pouvons toujours aller à notre point de vue. C' est notre créatif, et nous pouvons juste changer ces manuels. Je vais laisser la citation originale là, et je vais le taper à nouveau. Donc, je vais dire Label sur, disons, quatre sur l'avantage de cette étiquette pour que vous remarquez, ceci est un label quatre élément, et il est pointant vers le cours I d. Donc vraiment et vraiment ce que cette étiquette et quatre attributs ici fait dans le HTML d'origine. Est-ce aloès que lorsque vous cliquez sur l'étiquette, il met automatiquement en évidence quel que soit l'élément ciblé ? Donc, le côté de l'étiquette 44 il serait juste met en évidence ou liste déroulante avec le cheval i D. Comme son i. D. Suivant à l'intérieur de cette étiquette même, d'
autres classes et sous Skopje et la paix, les classes bootstrap qui ont été générés à l'origine avec notre contrôle chatouille que ce signe
parce que c'est juste du HTML pur. Ce n'est pas notre rasoir pour donc nous avons une étiquette pour pauvre Saidi sur. Nous lui avons donné les classes de sangle de démarrage, puis le texte manuel
sur lequel je voudrais taper son cours . Ensuite, je peux simplement supprimer cette ligne et je vais répéter cela pour le nom de l'étudiant sur Non, que nous avons terminé que nous pouvons changer l'orteil de texte de bouton, peut-être inscrire et ensuite changé la classe de bouton à Bt et le succès. Donc, nous obtenons un bouton vert sur comprendre pour sauver DTN bloc de tiret. D' accord, pour que tu puisses faire preuve de créativité. Non, comme nous l'avons dit au début, l'attente est que chaque fois que nous trompons notre soumission sur que ce soit une réponse réussie de ou Jason sont contrôleur chaque fois qu'un étudiant est à elle avec succès, alors nous nous attendons à ce qu'il va être un rafraîchissement. Donc, ce que nous sommes sur le point de faire est de créer une vue partielle qui va gérer les orteils, n'affichant que les étudiants qui sont dans les règles. Maintenant, le concept d'une vue partielle est que vous voulez une vue dans quelques-uns sur. Laisse-moi juste mettre ça dans les habitudes de perspective. Alors rappelez-vous que nous avons une mise à pied. Peach et dans la page Leo nous rendons réellement une vue. Donc, une vue est une partie de Julio pitch. Eh bien, une vue partielle est en fait conçue pour être une partie, souvent une vue existante. Nous avons donc ce point de vue sur. Ce que nous voulons faire est de créer un autre grand nombre d'entre vous à l'intérieur de cette vue qui est seul responsable du chargement d'une information sur les particules, ce qui serait les inscriptions sur. Ensuite, nous allons définir que lorsque nous changerons la valeur dans la liste déroulante que ce grand sera rafraîchi automatiquement, ainsi que chaque fois que nous soumettons une inscription pour un cours et les étudiants que cette cupidité rafraîchira. Et donc les nouvelles données sont allées faire une autre modification ici, comme je voudrais ma deuxième année sous mon formulaire. Donc je viens de mettre ah, règle
horizontale. Juste pour qu'on ait une petite ligne à montrer. Ensuite, je vais créer un div et je vais donner cela différent. J' ai désactivé les données. Donc, les données ou les données Dave va stocker sur une vue partielle suivante. Nous voulons réellement créer cette vue partielle, donc nous suivons la même procédure que nous l'avons fait dans la première partie lorsque nous créons des vues où nous faisons un clic droit ou le dossier Inscriptions et nous allons de l'avant et cliquez. Ajouter sur vous Merci de vouloir lui donner un nom, quelqu'un d'appeler cette inscription notre spectacle sur l'utilisation du trait de soulignement. Le front est vraiment juste la convention de dénomination. Certaines personnes créeraient un dossier pour les spectacles par. J' utilise juste un trait de soulignement pour représenter chaque fois que j'ai une vue partielle sur. C' est un modèle que vous pouvez voir dans d'autres endroits. Ensuite, je veux sélectionner un modèle, donc le modèle serait quel type de page voulez-vous ? Et nous voudrions vraiment une liste parce que nous voulons une liste des étudiants qui sont inscrits. Donc, je viens de cycliste sur le modèle qui devrait couvrir et c'est l'inscription. Ils verraient que déjà ont ce clic, mais à l'origine peut ressembler à ceci, mais une fois que vous cliquez sur créer nous partiel, vous voyez qu'il vide de la page de mise en page parce que le dur de vous va en fait héritent de tous ses scripts et étoiles et tout cela de n'importe quelle vue dans laquelle il est rendu, ce qui est intrinsèquement hérité de la Littlepage, sorte que cela sera automatiquement génial. Et puis nous cliquons. Add Ok, Donc si nous allons jeter un coup d'oeil sur le résultat, vous verrez qu'il ressemble juste à nos esprits index. Si je vais à l'index et que je le charge, vous pourriez presque les tenir côte à côte et voir qu'ils sont à peu près identiques. Donc essentiellement, le modèle de liste vous donne tout ce qui apparaît dans votre page d'index ou pages d'index en
utilisant réellement ce modèle de liste. Nous allons donc modifier un peu ça. On a une table. Oui, Onda, on peut laisser la cupidité, on peut laisser le titre du cours. Et vous remarquez que vous avez un cours que les titres hors cours sont l'entité qui est incluse dans l'inscription sur. Mais la raison pour laquelle j'ai dit inclus est que si nous regardons notre contrôleur d'index verra une sorte de ce qui se passe ici. Donc, lorsque nous chargeons des inscriptions ire sur, nous exécutons que là où vous voyez qu'il y a une partie de celui-ci est que inclure, et il inclut chaque entité qui est nécessaire ou ultérieure. Donc, cela est appelé chargement impatient où vous voyez, je ramène chaque enregistrement ici sur puis juste inclure les données correspondantes ou associées pour chaque clé étrangère Severe. Appelez ça nos tables romantiques pleines de clés étrangères. À ce score. Saidi étudiant I D et la conférence i d. Alors où voir ramener toutes les informations résultantes pour le cours correspondant . I d étudiant i d et conférencier i d. Et donc à notre avis, il était en fait juste un Lowe de voir le modèle qui représente point d'inscription quelle que soit l'entité n'importe quelle propriété de cette entité afin que je puisse laisser le titre du cours sur. Voyez-vous que l'élève au nom de famille revient ? Nous ne voulons pas nécessairement que la dernière chose serait sur le nom de famille virgule, prénom ou le nom complet. Donc, ce ne sont vraiment que les en-têtes de table, comme l'aurait vu quand nous avons regardé les inscriptions suivantes. Et c'est pourquoi ça ressemble de cette façon. Donc, nous pouvons modifier tout cela essentiellement sur ces airs, juste le nom d'affichage pour si relent. Vraiment, ce qui est affiché lorsque cela est rendu est vraiment juste quel que soit le
nom d'affichage que nous avions mis sur la propriété correspondante dans notre classe meta, je suis juste destiné à faire
quelques modifications en ce qui concerne ce que nous besoin de voir. Donc, nous voulons vraiment voir la cupidité et la force. Thaïlande Nom de l'étudiant. Je ne veux pas que le nom de famille de cet étudiant. Vas-y. Donc, je vais prendre ce vieux et je vais dire le nom de l'étudiant parce que je vais être une valeur de
rendu qui sont leurs noms complets. Je n'ai pas besoin de voir des lettres, prénom ou quoi que ce soit avec le conférencier, non ? Non, sur. On peut probablement rendre ça une fois pour que je puisse l'enlever de la table. Devrait avoir ces trois frappeurs de table sur un vide, je peux égarer l'action parce que peut-être vouloir orteil compléter une action. Vous remarquez que cette colonne est réservée à ces boutons ? Ce qu'on y arrive. Donc, pour chaque rouleau revenant dans nos inscriptions sur je vais, j'ai besoin de la note. Donc je laisse que j'ai besoin du titre du cours. Je laisse ça le jour. Je n'ai pas besoin des étudiants. Nom de famille. Ce dont j'ai vraiment besoin, c'est le nom complet de l'étudiant, donc je peux reproduire ça. Droit ? Donc, c'est un affichage en avant qui rend réellement n'importe quelle valeur est là et dehors à la mer. Étudiant au prénom sur l'étudiant de l'espace, ce nom de famille. Et si vous voulez envelopper tout cela dans une balise p ou autre chose, vous pouvez le faire. Nous avons supprimé la colonne, la tête pour les conférenciers, prénom ou les informations de la conférence. Je retire tout cela ensemble pour les actions. Eh bien, je voudrais seulement la suppression de la capacité de l'orteil à l'inscription, quelqu'un pour prendre ça. Donc si tu avais besoin d'en avoir d'autres, c'est bien. Donc, nous allons modifier cela aussi pour nous assurer que lorsque nous pourrions supprimer, nous n'avons pas à naviguer loin de la page simplement supprime vraiment cet enregistrement d'inscription et actualise la grille en conséquence. Maintenant, nous pouvons voir si change de viande ou d'action sur une autre chose. Nous pouvons supprimer cette cause je ne veux pas la possibilité de créer déjà sur l'écran de création . Nous n'avons donc pas besoin de louer un lien pour la création. Non, que nous avons terminé la vue. Nous devons réellement ajouter l'action pour cette vue partielle dans votre contrôleur. Rappelez-vous donc qu'aucune vue n'est impliquée à moins qu'une action correspondante ne soit présente. Nous devons donc donner à cette action le nom du même nom que les vues partielles. Comprendre la copie que de l'historique de l'explorateur de solution partage ne manquez pas le type, et je vais le placer immédiatement après l'index. Donc ils vont à leurs quelques différences sur vous pouvez voir cela fait de cette façon. Vous verrez peut-être que les gens le font. Il utilise des résultats d'action. C' est pareil. Il y a donc plusieurs façons de le faire. Je vais vous montrer avec partielle le résultat parce que j'aime voir ce qui est une vue partielle sur ce qui est un acte sur l'énergie de boeuf sont pleins de vous, même de mon côté contrôleur. Donc je vais dire des résultats de vue partiels, note
Andi. Je ne fais pas celui-ci un synchrone car au moins dans cette version hors NBC, ils ne prennent pas en charge une vue partielle synchrone. Alors soyez très prudent. Donc je rende public une partie de vos résultats, en lui donnant le même nom et puis à l'intérieur de ça, je vais revenir partiellement maintenant. Le travail n'est pas encore fait, parce que rappelez-vous que notre vue partielle nécessite des données qu'il recherche sur je connaissais
l'objet Maribel , euh, collecte des types d'objets d'inscription. Donc, avant de pouvoir retourner, je dois le retourner avec des données. Donc, juste de la même manière avec l'index qui a le même modèle de liste. Ils nous avons chargé des données et ensuite nous avons retourné ces données à la vue. Nous devons suivre un modèle similaire ici, donc je vais voir la vire dans une rangée Elements. Et je peux le faire parce que dans les romances locales à cette fonction, donc il n'interférera pas avec que les inscriptions verbales sur. Je vais dire point DVD dans Rolling's. Mais rappelez-vous qu'à notre avis partiel, nous avons besoin de détails pour le cours, et nous avons besoin de détails pour l'étudiant. Donc je vais juste emprunter cette cour ici à Index qui comprend des cours basés sur le dossier
relatif des étudiants, et je vais suivre ce modèle ici. Andi, charge-les. Je sais que j'ai fait mon souci. Je vais retourner la vue partielle avec les inscriptions sur. Est-ce que je viens de dire à la liste ou l'élément d'action suivant serait d'ajouter un paramètre à
la suraction afin que le périmètre serve le but de nous suivre pour filtrer sur les valeurs dans le périmètre Prenez, par
exemple, le détails. En fait, nous sommes qu'il reçoit un I D sur, puis vérifie si l'idée est nulle rivage. Mais alors ce qu'il veut vraiment le i d, c'est juste de trouver ce seul disque. Donc, nous devons ajouter un mécanisme de filtrage similaire, orteil notre action basée sur les idées de cours, donc je peux juste ajouter int là-dessus, le rendre connaissable. Donc, c'est comme ça que vous le rendez infaillible en mettant simplement ce point d'interrogation, cela suggère qu'une valeur nulle est acceptable à venir. Quand vous serez appelé dans cette action, nous allons voir un cours. Je le fais. Il y a pour que nous sachions exactement à quelle idée on fait référence. La prochaine chose qu'on veut faire, c'est que je commence la chorale parce que, non ? Non, on ramène les inscriptions, toutes les inscriptions. Nous voulons donc filtrer le discours. je Doncjevais juste injecter ce tribunal ici, et je vais juste en briser la ligne pour que nous puissions voir exactement ce qui se passe Donc vous pouvez vraiment le faire sans causer d'erreurs et comprendre de dire que les points étaient sur je suis ajout sur un filtre. Donc, c'est moi qui ajoute une expression de bois d'oeuvre. Si mon était proche de dire que nous sommes Qué cours amarré je d est équivalent à l'
idee de cours de paramètre . Donc, faire cela va vraiment beaucoup que cette vue peut être rendue sans aucune idée de cours. Et, bien
sûr, une requête comme celle-ci où c'est zéro et nous savons que nous n'avons pas de cheval. Je d zéro r. Ce n'est pas,
en fait, Onda, Onda, nous n'avons pas de cheval. Je ne laisse pas va réellement revenir sur vide, orteil
loué ou vue partielle. Donc, si vous vouliez que ce soit un peu plus convivial, nous pourrions ajouter sur if déclaration dans cette partie pour dire si le modèle étant notre liste sur nous pouvons dire que compter 18. Le nombre d'éléments remontant dans cette liste est inférieur à un pouce par fonction, sorte que le modèle d'accueil est inférieur à un. Alors on verra Brendan. Chacun a parlé pour dire pas d'inscriptions à ce cours afin que cela peut s'appliquer si nous
récupérons un ensemble vide. Parce que rappelez-vous que même si nous revenons , bien
sûr, je d. Um, si ce cours n'a pas d'inscriptions comme il alors nous voulons leur faire savoir qu'il n'y a pas actuellement ni inscriptions à ce cours sur. Nous pouvons mettre cela dans une classe bootstrap, peut-être un tiret de texte, mais nous pouvons le centrer pour sûr, et nous pouvons voir qu'il prend un tiret en quatre. Très bien, alors nous allons obtenir ce joli texte bleu que vous saviez qu'il n'y a pas d'inscriptions dans ce cours et ensuite nous pouvons terminer le reste de ce discours dans un autre pour dire ceci n'
évalue pas . Vrai. Ensuite, nous voulons imprimer ce service de table entier. Cela, plus signe dessous, a tout effondré comme le chaud sur lequel je suis piecé. On y va. Ainsi, la table est rendue lorsque la liste n'est pas vide. Bon, alors sachez que nous avons testé cette théorie que les charges de v