Aprende ASP. MVC de red y marco de integración (base de datos primero) | Trevoir Williams | Skillshare
Buscar

Playback-Geschwindigkeit


  • 0.5x
  • 1x (normal)
  • 1.25x
  • 1.5x
  • 2x

ASP-lernen. Net MVC und Entity Framework (Database First)

teacher avatar Trevoir Williams, Jamaican Software Engineer

Ve esta clase y miles más

Obtenga acceso ilimitado a todas las clases
Clases enseñadas por líderes de la industria y profesionales activos
Los temas incluyen ilustración, diseño, fotografía y más

Ve esta clase y miles más

Obtenga acceso ilimitado a todas las clases
Clases enseñadas por líderes de la industria y profesionales activos
Los temas incluyen ilustración, diseño, fotografía y más

Lecciones en esta clase

    • 1.

      Einführung

      1:42

    • 2.

      Visual Studio Community Edition installieren

      2:09

    • 3.

      ASP.Net MVC-Projekt erstellen

      4:06

    • 4.

      Datenbank einrichten

      6:07

    • 5.

      Entity Framework-Datenmodell hinzufügen

      6:04

    • 6.

      Führung durch die Ordnerstruktur und das Hinzufügen von Ansichten

      23:04

    • 7.

      Scaffolding: Controller und Ansichten hinzufügen

      35:02

    • 8.

      Verwalten von Datenbankänderungen

      13:40

    • 9.

      Eine Ansicht anpassen - Bootstrap 3

      20:10

    • 10.

      Eine Ansicht anpassen - Zusätzliche Daten

      9:11

    • 11.

      Datenvalidierungen zu Formularen hinzufügen

      31:12

    • 12.

      Einführung in das Web-Benutzermanagement

      5:22

    • 13.

      Änderungen im Web-Benutzermanagement

      30:23

    • 14.

      Web-Benutzerverwaltung autorisieren

      6:43

    • 15.

      Hinzufügen von Rollen und Autorisierungen

      37:09

    • 16.

      Projekt zu Github hinzufügen

      11:32

    • 17.

      Paketmanagement verstehen

      7:45

    • 18.

      Module für DozentInnen- und Einschreibungsmanagement hinzufügen

      13:57

    • 19.

      JQueryUI Javascript-Bibliotheken installieren

      12:06

    • 20.

      JQueryUI Autocomplete implementieren

      34:32

    • 21.

      Ein JQuery/Ajax Formular erstellen

      33:57

    • 22.

      Teilweise Ansicht und Datenaktualisierung

      32:57

  • --
  • Anfänger-Niveau
  • Fortgeschrittenes Niveau
  • Fortgeschrittenes Niveau
  • Jedes Niveau

Von der Community generiert

Das Niveau wird anhand der mehrheitlichen Meinung der Teilnehmer:innen bestimmt, die diesen Kurs bewertet haben. Bis das Feedback von mindestens 5 Teilnehmer:innen eingegangen ist, wird die Empfehlung der Kursleiter:innen angezeigt.

580

Teilnehmer:innen

--

Projekte

Acerca de esta clase

Übersicht

Mit MVC, Entity Framework und ASP.NET Scaffolding erstellen wir ein kleines Schulmanagementsystem und lernen dabei die wichtigsten Konzepte der ASP.NET MVC-Entwicklung kennen. Dieser Kurs zeigt dir, wie du die Scaffolding-Funktionen von MVC nutzen kannst, um schnell datengesteuerte HTML-Seiten zu erstellen und wie du Abfragen mit Hilfe von Datenbanken schreiben kannst. NETs berühmtes Entity Framework mit C#.

Warum lernen . NET MVC

Microsoft . NET ist die Plattform, die die Geschäftstechnologie vieler der Top-Unternehmen in den Vereinigten Staaten und vielen anderen Ländern antreibt. Es ist die vorherrschende Technologie, die zur Förderung der Unternehmenstechnologie verwendet wird. Unternehmen haben sich entschieden . NET wegen seiner bewährten Skalierbarkeit, Zuverlässigkeit und Unterstützung.

Der . Die NET-Sprache der Wahl zum Lernen ist C#, da sie heute zu den am häufigsten verwendeten Sprachen gehört. Es ist eine Allzweck-Programmiersprache, die fast alle Probleme bewältigen kann, von Desktop-PCs über Mobilgeräte bis hin zu dynamischen Webanwendungen. Daher besteht weltweit eine hohe Nachfrage nach . NET-Entwickler in einer Vielzahl von Branchen, das bedeutet, dass mehr Jobs für Kandidaten mit einer soliden Grundlage verfügbar sind . NET-Technologien.

Über diesen Kurs

In diesem Kurs lernst du auch, wie du mit Javascript, JQuery und JQueryUI und Ajax dynamische und benutzerfreundliche Benutzeroberflächen entwickeln kannst. Alle Oberflächen werden mit dem Standard-Bootstrap-CSS-Framework gestaltet, das verwendet wird, um ein Standard-Look und -Gefühl auf allen Seiten beizubehalten.

Am Ende dieses Kurses solltest du in der Lage sein:

  • Eine vollständig datengesteuerte Webanwendung entwickeln

  • Die MVC-Ordnerstruktur verstehen

  • Deinem Projekt mit Entity Framework Datenmodelle hinzufügen

  • Grundlegende LINQ-Abfragen schreiben

  • Verstehen, wie Modelle, Ansichten und Controller kombiniert werden, um eine Webanwendung zu erleichtern

  • Razor-Syntax in Ansichten verstehen

  • C#-Modellklassen verstehen

  • Verstehen, wie du einem Controller Ansichten und Aktionen hinzufügen kannst

  • Bootstrap verwenden, um JavaScript-Steuerelemente (Schieberegler usw.), Schaltflächen- und Textstile einzufügen und das Gesamtlayout zu manipulieren

  • Ein Projekt auf GitHub hochladen

  • Pakete in einem MVC-Projekt verwalten

  • User JQuery und Tools zur Steigerung der Interaktivität und Animationen auf der Benutzeroberfläche.

Inhalte und Übersicht

Für diesen Kurs brauchst du Kenntnisse in der objektorientierten Programmierung, wenn nicht in C#. Auch wenn du nicht viel mit der Belichtung hast. Dieser Kurs ist sehr anfängerfreundlich und steckt voller Tipps für die Entwicklung.

Dies ist ein riesiger Kurs. Über 5 Stunden Premium-Inhalte, aber intelligent aufgebrochen, um eine Reihe verwandter Aktivitäten auf der Grundlage der einzelnen Module in der Anwendung, die entwickelt wird, hervorzuheben. Außerdem beschäftigen wir uns mit der Fehlerbehebung und Fehlerbehebung; Implementieren von Best Practices; Schreiben effizienter Logik und Verstehen, warum Entwickler die Dinge so machen, wie sie es tun. Dein Wissen wird im Verlauf des Kurses Schritt für Schritt wachsen und du wirst herausgefordert, das Beste zu sein, das du sein kannst.

Wenn du den Kurs abgeschlossen hast, wirst du dich in Visual Studio bewegt haben und Logik- und Syntaxfehler so sehr untersucht haben, dass es für dich bei der Arbeit in der Natur sein wird. NET-Umgebung. Deine neu erlernten Fähigkeiten werden praktisch eingesetzt und deinen Chef und deine Kollegen beeindrucken.

Der Kurs ist komplett mit auf GitHub gehosteten Arbeitsdateien, mit der Einbeziehung einiger Dateien, um dir die Replizierung des demonstrierten Codes zu erleichtern. Du kannst bei der Arbeit an der Seite des Autors arbeiten, und du erhältst nach Abschluss des Kurses ein nachweisbares Abschlusszertifikat.

Triff deine:n Kursleiter:in

Teacher Profile Image

Trevoir Williams

Jamaican Software Engineer

Kursleiter:in
Level: All Levels

Valoración de la clase

¿Se cumplieron las expectativas?
    ¡Superadas!
  • 0%
  • 0%
  • Un poco
  • 0%
  • No realmente
  • 0%

¿Por qué unirse a Skillshare?

Mira las galardonadas Skillshare Originals

Cada clase tiene lecciones cortas y proyectos prácticos

Tu membresía apoya a los profesores de Skillshare

Aprende desde cualquier lugar

Ve clases sobre la marcha con la aplicación de Skillshare. Progresa en línea o descarga las clases para verlas en el avión, el metro o donde sea que aprendas mejor.

Transcripciones

1. Introducción: Hola chicos, bienvenidos a mi nuevo curso. Aprender es velocidad dotnet, MVC y base de datos Entity Framework. primer lugar, en este curso, vas a aprender los fundamentos de ASP.Net, MVC y Entity Framework construyendo una pequeña embarcación práctica School of Management System. Ahora este curso fue diseñado con principiantes en mente si eres completamente nuevo en el desarrollo, a estrenar en todo el concepto de ASP.Net, MVC, HTML, jQuery, y todos esos jargons, buzzwords y esos nombres fuera de las tecnologías, los escuchas pero no estás del todo seguro de cómo usarlos. Este curso es un curso de iniciación perfecto para ti. Aquí. Al final de la misma, vas a poder construir una aplicación web completamente basada en datos usando una velocidad en ella MVC. Entenderías el patrón de diseño MVC y la estructura de carpetas. Podrías consultar bases de datos usando consultas Entity Framework y LINQ. Y sólo entenderás todo el ecosistema dotnet tal como está. Al final de este curso, también sabrás usar el control de fuentes en forma de GitHub, cómo integrar los controles JavaScript y jQuery sobre código en tu aplicación y desarrollar una interfaz de usuario completa y rica para tus usuarios. Para cuando hubieras terminado este curso, habrías movido el suyo propio en Visual Studio tanto mirado los errores porque no escondo errores a mis alumnos. los mostré a las soluciones. Entonces para cuando termines habrías visto las flechas y habrías podido depurar y saber resolver tus propios errores en el futuro. Esto te pondrá por delante en cuanto a tus conjuntos de habilidades, te permitirá mejorar tu comerciabilidad y tus ingresos e impresionar a todos a tu alrededor, ya sabes, con todo lo dicho, te veré en el curso. 2. Instale la comunidad de Visual Studio: en este video estará buscando instalar Visual Studio 2019 Community Edition Para llegar al discurso, puedes seguir el enlace que se incluye en los recursos para este video. O puedes simplemente Google Visual Studio, que es gratuito para desarrolladores y waas individuales. Pero si vas empresas, su aplicación de la que se te requiere para comprar una licencia. Después de hacer clic en este botón, seremos conducidos a este pitch, cual se lo agradecerá antes de descargar, y deberías ver tu archivo disponible. Después de hacer clic en este archivo, se le requeriría borrar el susto a las advertencias y correr. Esto luego se lanzará sobre instalador para que podamos seguir adelante y continuar en un bajo esa botella. Cuando eso termine, nos presentarán unas cuantas opciones para modelos para descargar. Debido a que estamos haciendo una aplicación basada en Web, vamos a querer asegurarnos de que tengamos la velocidad en el MIT, y qué desarrollos marcharon, también. Por lo que solo haremos clic en la casilla de verificación, que luego incluirá todas estas opciones. Tú Nader adelante y haz clic en estrella. Cuando esto se termine, puedes seguir adelante y comer y dormir fuera de esta complicación y un estudio visual bajo para iniciar el final, procederá el estudio visual de lanzamiento y cerrará el instalador. Adelante e inicia sesión si antes tienes una cuenta Microsoft. Si no, entonces entendiste, no sabes. Y tal vez más tarde lo venderé Clark por igual a mi FEMA. Pero nuestros equipos también pueden cambiar y optimizar. Tu desarrollador se sittings out shoes con desarrollo on podemos el Sleep Starts Musical studio. Esto lanzará resistido 2019 donde nos preguntarán si queremos empezar clonando apertura de núcleo existente en proyecto o solución. Abrir una carpeta local son bonitos y los proyectos podemos parar aquí ya que habríamos completado con éxito los requisitos. Con este pequeño, te quedas atentos para más. 3. Crear proyecto MVC de ASP.Net: Biggers a hacer sería comenzar nuestro maravilloso viaje. Emocionante viaje fuera Qué programación con SPD conoció a NBC y en diferentes trabajos. Al final de este ejercicio, debería poder construir una aplicación de término de datos totalmente utilizando el marco de entidad en la velocidad del día en ella. NBC Like, previamente discutido NBC es según patrón, lo que significa que es un dedo del pie camino estándar. El ex Andi puso tu registro en una estructura y menor la M significa modelo, lo que realmente significa la representación fuera de tu base de datos. En su aplicación Web, el V representa las vistas o el lado visual de las cosas. Estar para vista V para visual. Tu interfaz de usuario, etcétera en el controlador realmente es solo el orquestado en segundo plano que dice, OK, el usuario solicitó hoy este reloj responder con él tiene en alguna cantidad de lógica. Muy bien, entonces inicias este viaje abriendo un estudio visual, y estamos usando Visual Studio 2017 Community Edition para este ejercicio. A. Estaremos construyendo un sistema de gestión escolar, así que trae tu estudio visual. Andi. Ya creé uno de esos eliminados de la lista, y estaremos creando un nuevo proyecto de programación Web para que puedas ir al archivo limpio, haces clic en proyecto o simplemente usas tus interferencias aquí. Nuevo proyecto. Unidad de Maíz Inkley. Entonces, del lado izquierdo, quería ir a visual C Sharp e ir a la Web, subcategoría, bajo la cual verás dos opciones una velocidad. Esa aplicación web de red es la que tienes que seleccionar, y luego vamos a nombrarla. Las gerencias escolares aseguran que tengas un directorio adecuado sobre eso. Lo has deshuesado. Teoh, consigue el repositorio que necesitas Luego pulsa Aceptar para esta pantalla. Asegúrese de que tiene NBC seleccionado el. Queremos cambiar nuestro método de autenticación por el usuario individual Collins. Si todo está bien encendido, todo luce al menos antorchas de muy similitud en mi pantalla. Entonces puedes hacer click. OK, El proceso de creación puede haber tardado un tiempo, así que me salté por delante del dedo del pie cuando está terminado, así que puedes posicionar video. Si aún no estás en este punto más. Una vez que hayas llegado a este punto, se te dará esta bonita página de aterrizaje, que te permite hacerlo. Empezó con la velocidad aérea Annette Ambrose a Connected Zero de Turow y un montón de otras cosas. Bueno, echemos un vistazo a los interferencias y a lo que nos dieron para trabajar. Si estás acostumbradopara ganar formularios, entonces te das cuenta de que no tienes una caja de herramientas, que habría sido un pilar para ambas formas de ganar y se realizaran en NBC. Se trata de un nuevo paradigmas de programación, por lo que ya no tienes ese estilo de programación de despojo de eventos. Entonces no hay caja de herramientas. No hay controles. El arrastrar y soltar tendrás la sujeción del dedo del pie. Todo el uso de estándar es Jamil técnicas on. Después tenemos la solución Explorer, que suele ser donde vamos y encontramos a todo el padre con el que estaremos trabajando. Y en esta situación, no hay diferencia. Vemos algunas carpetas más y se usarán si estamos acostumbrados una vez más a los formularios de viento y Web. Pero no te desanimes. Las tres carpetas clave en este conjunto de archivos serían tu modelo. Tened bien a ti y al Contralor Fullers, y luego a los otros incendios nos meteremos a medida que avancemos. Entonces, por favor, llega hasta aquí y hazme un golpe. Si tienes alguna pregunta, siéntete libre de dejar un comentario o cualquier observación en la anomalía esa experiencia única y hazme saber cómo te sientes 4. Base de datos de configuración: por lo que para retomar donde dejamos haber creado o proyecto de gestión escolar. Lo primero que queremos hacer es configurar sobre base de datos para que podamos poner en marcha nuestros modelos . No así para configurar la base de datos que necesitamos ir por encima del dedo del pie son ver menú on. Entonces buscamos una habilidad, un explorador de objetos de servidor. Por lo que para este ejercicio se estará utilizando sobre DB local. Si tienes instalado SQL Express o SQL Developer, entonces puedes usar ese incienso. Pero para mantenerlo simple, solo uso el que viene incorporado con visual studio. Bajaré a mi instancia de base de datos local. Mira todas mis bases de datos son bastantes datos. Esto es de proyectos pasados, pero queremos crear, y hay que básicamente hacer clic derecho en bases de datos y hacer clic en Agregar nueva base de datos y podemos darle un nombre. Lo llamaremos gerencia escolar Jarabe atacó a mis amigos Dante subrayó TV, o se elimina la mina Seimas, al menos por consistencia. Se puede cambiar, pero para que tengamos ah, más sin fisuras lleno. Vamos a mantener la misma convención de nomenclatura y luego haga clic en Aceptar. Esto entonces crea o nueva base de datos para que pueda perforar en esta base de datos. Ya que él en mis mesas, no habría ninguno excepto las mesas auxiliares octogenarios, que para este ejercicio no son realmente necesarias. Por lo que solo haremos click derecho en las mesas y pulsaremos Añadir nueva Tabla. Yo he incluido los archivos de script, por lo que puede seguir adelante y copiar el archivo de script desde el ya he incluido el script ya que eso generaría nuestra base de datos. Alguien para usar uno fuera del guión pasado para el 1er 1 Pero entonces crearé dildos Manu ality copié el archivo de script de o plataforma de aprendizaje. Y luego se puede ritmo en esta sección. Ese es su t SQL. Y te das cuenta de que lo que cada dejar de fumar aquí se replica aquí. Y si haces un cambio en la parte superior, te replicas en el guión, por lo que funcionan bastante bien en tierna. Una vez que estés satisfecho con la tabla y tu tabla se parezca a la mía, entonces puedes seguir adelante y hacer clic en actualizar para actualizar la base de datos, luego hacer clic en deshabilitar los establecimientos de fecha. Una vez que eso haya sido exitoso, podrá repetir ese procedimiento con cada otra tabla que este prescriba. Por lo que creamos una mesa estudiantil. Ahora creamos un curso todavía y yo haré este usando el diseñador tú. Entonces tenemos idea del curso Off course. El nombre aquí es realmente inconsecuente. Pero quieres presentarte Tienes un nombre de carritos. ¿ Sabes qué es? Dejarla en Title créditos en créditos sería un entero mientras que título estaría en extremo fuego Char Acabo de poner eso a 50 y otros préstamos para ambos fuera de ahí. Onda Voy a hacer mi clave primaria y columna de identidad sobre su número de formas de hacerlo por mí. El camino más fácil justo alrededor identidad Carmel Muy bien, así que si no tuvieras errores ortográficos de lo que no tendrías errores como acabo de tener. Entonces ese es nuestro guión y simplemente renombrará o tabla por supuesto, desacuerdo mantiene la mirada en curso, correcto. Y entonces una vez todo está bien, nos gustan las actualizaciones hace una vez y ojalá la clave de éstas fuera que el exitoso Deberíamos ver nuestra tabla de cursos listada ahí Y entonces tenemos una tabla más para la que usaré el guión para ir. Esta es una mesa realmente grande, así que acabo de hacer el guión, paz ahí y entonces eso nos daría nuestra tabla de inscripciones con nuestra inscripción yo d que es nuestra clave primaria o gran curso yo d. Entonces esta mesa es lo que ustedes llaman un mesa enlazadora, que está facilitando muchos, muchos, muchos a muchos relación entre todos los cursos y todos los estudiantes que están haciendo estas fuerzas. Esto distraer a todas esas asociaciones en. Además, coincidieron en que se pondrían así una vez que estés satisfecho con eso, haces como, un poco Habiendo creado con éxito las tres tablas, no estás listo para el siguiente paso. Pero fuera de curso, sólo puede verificar yendo a nuestra secuela Object Explorer y simplemente asegurándose de que las tres mesas se airen ahí. Puede ver los datos haciendo clic derecho en la tabla específica y luego haciendo clic en los datos fuera de curso. no hemos ingresado ningún dato en nada, Así que todo está vacío. Gracias por afinarse y nos vemos siguiente imagen 5. Agrega un modelo del marco de datos de la entidad: Oigan chicos. Por lo que seguiremos de sentarnos fuera de la base de datos con configuración o modelo de datos en nuestros proyectos para que nuestra aplicación Web comedores plausibles sean justo como un recordatorio. Contamos con controladores contamos con modelos y utilizamos. Entonces los modelos son la base de datos que dicen, los archivos imitados que se parece a la estructura de la base de datos en. Nos ayudan a comunicarnos con la base de datos a través del marco de entidades. Entonces si buscamos en esta carpeta que ven que hay algunos modelos porque realmente creamos o proyectamos usando el individuo una opción de autenticación de conos Si no hiciste eso , ,está bien. Pero lo que estamos a punto de hacer es agregar un diagrama de marco de entidad a nuestro proyecto. Por lo que solo hacemos clic derecho en este modelo de agua , agregamos, Te vas dedo del pie nuevo artículo, luego buscamos la subcategoría. Esos son sus datos Ahí. Seleccionamos nuestro modelo de datos de entidad de radio dot net. Podemos darle un nombre que sea sugerente de lo que estamos haciendo para que podamos decir que la escuela gestione amigos. A mí me gusta llamar a mi DB después de hacer esa semana. Cuando obtenemos este asistente, queremos dejarlo en el diseñador desde la base de datos porque estamos haciendo nuestro primer acercamiento de base de datos. Entonces dejamos ese seleccionado a continuación, entonces se nos pedirá que conectemos dedo del pie. Instancia de que nuestra base de datos fue creada en ti, ¿ recuerdas? Él lo creó en nuestra escuela m s s local BB, lo que significa que necesito ir dedo del pie luego poner en el servidor. Sabía en este caso, bien es local e d y S s q l ahora se podría poner esta gota conocida. Si tienes más de una instancia, eso probablemente aumentaría el poco tiempo, dependiendo del hogar, cualquier sentido que tengas Y si estás en la red es buscar todo, por lo que eso realmente tomará un tiempo. Entonces si lo sabes de memoria, es más fácil a esto. Escriba en el entonces una vez que haga eso, seleccione la autenticación en este caso son la autenticación está en esta autenticación en. Después seleccionamos nuestros datos. Estos de esto atado a este andare más tarde Esta es la televisión de la dirección escolar. Entonces hacemos clic en Aceptar y se verá que la cadena de conexión que sólo un poco en, def. Nos fijamos en la historia del contexto. Ves que realmente es solo inglés cuando obtienes todos estos personajes y símbolos del camino es realmente solo inglés. Es una cadena crónica de Stan igual y la fuente de datos está sobre el servidor en el que acabamos de empezar . Está bien. Nuestro catálogo inicial es la base de datos que seleccionamos y luego tienes algunas otras cosas entrevistan a la seguridad. Verdadero, múltiples resultados activos. Es cierto en entonces el motor detrás de él es nuestro marco de entidad. Por lo que una vez que estemos satisfechos con esta pantalla, puedes distritar siguiente. Entonces nos preguntará qué objetos de nuestros datos. Esto sería como incluir en nuestro proyecto ahora ¿Hasta ahora? Bueno, crearon tres tablas pensando que este click esa caja son si tienes todos los objetos que probablemente no quieran incluir. Probablemente quieras taladrar y dormirte ahí. Uno por uno se terminó. Entonces esto buscará un rato. El Señor arte. Por lo que una vez que eso se complete, se te lleve a la pantalla que se ve similar a la matrícula del curso de secreto y a los alumnos, o cualquier tabla que hayas creado en esa aguja es que especificaste conseguirás estos datos en el diagrama. Entonces si perforamos en los archivos que están asociados a nuestros bancos e G o diagrama de modelo de datos . Ya veremos aquí que en realidad tenemos algunos CS archivan algunos expedientes judiciales C afilados con las mismas necesidades que aquí corresponden. Está bien. Y si fueras a abrir esos y echar un vistazo, no lo haces es que realmente solo clasifiquen archivos con los chicos fuera de atributos Andi cordón de aspecto aleatorio que se generó. Pero entonces, si se presta atención a las propiedades, nota que estas propiedades son durante la representación los campos para mí desde la fecha de sus no se dice una sociedad pobre como creamos tienes título como creamos y luego créditos, y hicimos créditos conocedores en la base de datos. Por lo que tenemos un tipo de propiedad entero con conocimiento justo aquí. Está bien. Y luego ves que también hay en incluir la lista fuera de lo relacionado en Roma. Sin duda es Weber clave extranjera desde las inscripciones hasta el curso. Entonces marco de entidad está generando el hecho de que bien, en una relación clave extranjera que estoy con el incluir una lista fuera de las inscripciones en las que esta fuerza, cualquier curso en particular estaría involucrado. Muy bien, entonces el marco de entidad está haciendo que sea mucho más fácil presa de las relaciones de administrador en sus asociaciones a nivel de base de datos. Pero lo que es más importante, este CD, un diagrama de mezcla, crea ese puente entre o aplicación de Internet o aplicación Web en nuestra fecha de estos , para que así se vaya añadiendo el modelo de datos dos años proyectos. 6. Tour de la estructura de la carpeta y cómo añadir vistas: si sabes dónde lo dejamos en el último video que creamos o modelos de datos y en instituto donde estaremos buscando agregar vistas de controladores sobre hacer un recorrido general de los archivos que nos ayudan a través de nuestra programación web. No, Microsoft Gate era bastantes archivos y carpetas generados. Nos dan un bonito lleno de estructura. Es algo así como un esqueleto o sistema de orientación, si se quiere. No es difícil y rápido que tu proyecto se vea más, deja esto porque a medida que avanzas, agregas cosas se estaban moviendo. Entonces estás a favor de la estructura me muy de esta bala al final del bebé. Una vez que creas en proyectos de D C, este es el completo general. La estructura que obtienes ahora voy a pasar por las carpetas. Puedes hacer un pequeño tour en apreciar plenamente lo que tenemos exactamente. Por lo que un advenedizo, tienes algunos expedientes judiciales. Esos son esenciales para el inicio real de nuestra aplicación ahí. Algunos pre procesadores, ya sabes, establecen unas configuraciones de proteínas de cosas de identidad, algunos paquetes para nuestras estrellas y scripts. No voy a entrar en los detalles de esos pero sólo podemos tener una apreciación de lo que es un advenimiento. Si miramos el contenido, vemos que tenemos unos cuantos archivos CSS fuera de la caja, y V C cinco viene con bootstrap, kindof integrado y incorporado. Por lo que su aplicación Web tiene el aspecto y la sensación de bootstrap por defecto. En realidad puedes quitarlo si lo deseas. Se lo puede apreciar si lo desea. Puedes hacer lo que sea una vez que esté ahí. También te dan otro archivo CSS estándar, que es tuyo para editar a voluntad. Esta práctica tendría que crear otro archivo CSS y anular estrellas y bootstrap lugar de editar archivo chef. Entonces por eso te habrían dado otro donde agregarías tus propios estilos personalizados y thes adicionales el me bootstrap, más personalizado y más personalizado en el controlador supporter tenemos tres controladores en podemos uso de la convención de nomenclatura que el nombre del controlador sería alguna palabra en este caso, oponente en el control de palabras. Ah, y si tienes a los tres rápido, te diste cuenta de que van a tener eso visto durante meses. Alguna palabra en este caso casa en la palabra control administrar controlador salvador crearía un nuevo controlador. Deberías tener lo que sea que lo estés siguiendo al terminar con el controlador de palabras. Tarifas internas Muy bien, fondos. Esos se generan. Esos vienen con bootstrap con nosotros. Tira Internet. No todas las computadoras son con la ayuda de fondos que te gustaría mostrar. Por lo que siempre es bueno, al menos en moderno el desarrollo Web incluir el archivo de fondos con sus proyectos para que el servidor señale los fondos como se oponen a la máquina del avión. Entonces por eso está ahí. Yo te aconsejaría que no lo comas, sin embargo. Honestamente. Alguna vez dar que pasamos por modelos on, vimos donde tenemos o diferentes archivos de clase y agregamos o puerta de estas entidades modelo . Por lo que tenemos un puente de tienda días de esto. Tenemos una carpeta Scripts, que por favor publiquen toe un montón de scripts, en su mayoría scripts de consulta J que se necesitan para complementar o bootstrap scripts. También tenemos modernizador responder, lo que ayudó con la capacidad de respuesta y compatibilidad hacia atrás para más. Hmm. Si meto para navegadores más antiguos, así que otras de estas cosas casas preempaquetadas con la palabra proyecto, no tienes que agregar estas cosas manualmente. Está bien, así que aquí tenemos o vistas carpeta, que por favor hospede dedo sobre reserva tus archivos con la extensión que C s h. ¿Lo sabes? Supongo que parece. Ver, afilar HTM de combinado. Eso es exactamente lo que reserva? No. Quería apreciar la correlación entre los nombres de las carpetas aquí en las vistas sobre los nombres fuera de los cochecitos de fondos. Entonces vamos a mirar al controlador domiciliario Onda, apreciamos eso. Correlación. Por lo que tenemos un controlador domiciliario, que es un archivo CS. Onda, un archivo CS es solo un archivo de clase. Como ves, realidad es solo una clase en lastimar desde una clase base llamada Controller. en ella, tiene funciones, métodos, procedimientos, procedimientos, cualquiera que sea la palabra clave que usaste identifícalos. Tiene esos. Todos devuelven algún tipo de resultados de acción sobre el valor de retorno por inacción. El resultado es vista, Ya sabes, lo que esto está haciendo es establecer que Para cada método que tengas aquí, debes tener un archivo de vista correspondiente en. Eso es lo que esto devuelve. Entonces cuando remites la búsqueda de índice desde el controlador de casa, fue la búsqueda a través del soporte de vista en buscan un lleno del nombre correspondiente casa en eso. Se buscará controlador con una vista para vista con la diversión correspondiente, hijo, se indexa en, luego se lo devolverá. Entonces eso significa que si tienes un método aquí y no tienes ningún archivo correspondiente en una carpeta correspondiente que obtienes algo así como una era 404, nos meteremos en eso y exploraremos todo eso en unos minutos. Por lo que acabo de echar un vistazo al índice muy rápido. Nuestro archivo de índice. Yo quería apreciar que tiene cosas puramente html en su aparte de esta sección, que está precedida por esto a la señal. Una vez que ves un exterior, eso significa que estás a punto de superpuesta C afilada hasta tu HTML. Muy bien, así que recuerda es un archivo html CSS. Entonces está siguiendo un poco apagado c sharp en él está fusionándolo con html en solo hago un ejemplo rápido fuera poner, ver, afilar esto. Otros protegidos si declaración así a la firma. Si un entre este solo muy ejemplo solo para mostrarte toda la razón funciona que en realidad me permite crear off Lo siento. Bueno, ya que me permite realmente superponer c agudo viejo justo aquí en mi regional. Entonces esa es la relevancia fuera de mi ver ization o reserve you file. Otra cosa a destacar es que no tenemos ese esqueleto tradicional. Yo lo llamo un esqueleto donde cada tema, Beatrice tiempo con nuestro tipo doc en nuestra cabeza y o etiquetas corporales. No tenemos eso aquí. Ninguno de estos tus archivos tienes. Eso es porque todos están heredando de lo que llamamos un archivo de diseño. Llegaremos a ver la lima de uñas en unos pocos. Pero lo que realmente quiero que veas y aprecies es el hecho de que cada archivo aquí el nombre corresponde con el nombre fuera del método. Eso es el controlador. Muy bien, Así que una vez que tengas un nombre de método una vez más, necesitas tener un archivo de tu correspondiente en una carpeta la cual tenga un nombre correspondiente al controlador. Entonces, solo hagamos un recorrido. Andi finalmente presionó a las cinco. El momento evolucionando, esperando Así vamos a crecer. Por lo que pudo haber tardado un tiempo. Pero una vez que estés aquí, queremos echar un vistazo a todo Visual studio y sp .net NBC nos están ayudando hasta crear una puerta totalmente funcional y sitios web alemanes. No, este es nuestro discurso de índice. Regla cardinal para mí, cuando se trata de algún tipo de diseño, es que todas las páginas deben llamarse índice una vez que sea la intención hecha en casa, ¿cómo o página de índice. Si miras esto y nos fijamos en frío, ves la correlación entre lo que está aquí como contenidos en lo que estaba en la página también veremos que tenemos un poco bootstrapped aparentemente tierra donde usando los botones de amor bootstrap , incluso los fondos vienen de tonterías. Todo está integrado con lobos. No, quiero Justo también agradezco que esto se está cargando desde Post bajo. No se está cargando desde tus conjuntos de archivos locales como sería si estuvieras construyendo una página HTML normal . Visual studio en realidad está conjurando una sesión fuera. I s express s un seguro para los servicios de información de Internet. Entonces es 100 de muchas fibras y apagado que lo estoy usando para emular una experiencia de servidor Web. Cuando vas a estar sobre más, Que es cuando presionaste cinco. Ahora, si nosotros el cono tres del bro, vemos que este es nuestro semanario casero. Encendido un barco. Vemos ese cambio de enlace. Entonces no, tenemos hosts locales en su número de puerto pueden diferir del mío. Vemos a casa. Veo nuestros barcos. No, recuerda o controlaba todo era esperanza así Cualquiera que sea el nombre fuera del controlador, eso es lo que aparecerá. Y a esto le seguirá el nombre fuera de la vista que hemos solicitado. Por lo que de hecho el contacto. Ves un contacto similar cambio de casa barra inclinada. Está bien. Y volveré a casa. De todos modos va a cargar índice, por lo que no necesita indicar nada más. Vamos a volver a estudio visual y hacer algunos cambios. No, vuelta en estudio visual entiende. Salgan del tablero del mal. No, vamos con el dedo del pie. Agrega una nueva vista. Entonces me voy de pie, dos pasos. Piedras en, Derecho público. Ya sabes, nuestro tipo de retorno fueron los resultados de la acción. Y luego veré pruebas. Tú esperando por ella son llaves de pájaro encendidas Entonces sabemos que tenemos que devolver vista ya que ese es el valor. Por lo menos, esos son nuestros métodos. Se esperan cosas. No. Si ejecuto en modo de depuración una vez más el, entonces intenta crecer a esta vista, deberías obtener una flecha porque no hay ningún archivo correspondiente en esta carpeta. Por lo que solo ejecutaremos ese experimento y reconstruiremos. Adelante en consecuencia. Sé que tenemos nuestro látigo arriba. Podemos seguir la convención de ruta de costura a la que estamos acostumbrados por lo que solo puedes ver una barra en casa ya que ese es el controlador en el que acabamos de agregar esa vista también. Entonces voy a escribir en el nombre fuera de la nueva vista agregada, que es vista de prueba presione enter on, luego fueron recibidos con esta página muy poco atractiva. Pero entonces si nos tomamos el tiempo o para apreciar lo que está viendo es haciéndonos saber que la vista por este nombre no fue telefónica en ninguna fuera de los lugares que se buscaron. Entonces vemos que se veía en las vistas Boulder. Miró en la carpeta de inicio correspondiente en que no encontraron ningún archivo que posiblemente pudiera haber pasado, como usted ha presentado. De acuerdo, así que esa es esa clase de flecha fuera que obtendríamos teniéndome a Not a mí. El corazón se ajuste dedo de nuestros proyectos. Ahora de vuelta en el estudio visual, todavía nos queda un poco de trabajo por hacer para que esta vista se vuelva a poner en marcha. Ya creamos las cosas del método aquí. Lo que queremos hacer es conseguir aquí el expediente. Puedes hacer clic derecho en seis impares ambos en. Entonces dar. Es el nombre que sabes que queremos. Entonces eso te pondría a prueba. Y luego vemos un montón de otras opciones aquí. No necesitamos ponernos sobre la clase de modelo de plantilla todavía. No queremos llevarnos esto, pero luego ves algo aquí sobre Leo Page. Mencioné tus páginas antes, pero aún no lo hemos hecho para mirar el pitch de la etiqueta. Pero sólo dejaré esto en blanco para ningún Dios. Y luego pasa por esta cosa llamada correa Holding. Sé que tenemos nuestra vista recién creada el. Es una página bastante sencilla. Como dijimos, es casi una página html de huesos de cerveza que es capaz de tener a alguien gime o c texto afilado en ella. Se obtiene el título aquí en esta variable, por lo que también está generando todo esto en ellos apenas en llega. Pies tirón. Ese es su Hola mundo. Andi. Le daré una de esas famosas clases bootstrap glass y es el texto lash en cuatro. Por lo que deberíamos conseguir azul fijo cuando nos rentamos era él puede controlar, cambiar y ser o construir y hacer clic construir solución en las obras Solo asegúrate de que no tengamos errores de sintaxis en nuestro tablero. También vemos que es nuestro archivo que se crea por aquí. Entonces si vuelves a la lancha amarrada, entonces crecemos para probarte, Entonces deberíamos ser recibidos con una página con una H para platicar con este texto generado así como el texto que acabamos de agregar. Está bien, No, que hemos hecho eso los ajustes. Acabas de volver a esta página primero por mí. Estas presionaste cinco desde visual studio de lo que nunca iría dedo del pie al discurso que vemos aquí que tenemos sobre h remolcador imprimiendo esto y nuestro hola mundo look room porque ponemos en la clase bootstrap para texto para que solo podamos ir makoto gente mas y saber sabemos hota agregar más vistas. Por lo que nuestros proyectos una vez más vas al controlador on. Nos aseguramos de que haya un stub de método que tenga un nombre correspondiente con la vista a la que queremos llegar. ¿ Todo bien? No, mencioné más de una vez la página de Leo en Dime No. On's Give You un rápido recorrido fuera de lo que hay en la pedacita. Esencialmente, la página del velo es un genérico reutilizable. Tim suplica por tus melocotones. Se puede tener más de una carga en el caso por tener más de una. Ofertas serían como Si tienes un sistema que tiene un lado orientado al cliente y un portal de administración , entonces sabes que eres Porter probablemente se ve diferente al cliente, fusionando uno para que puedas tener un poco para el lado admin y ponerte baja para una cuota de cliente dentro de. Entonces eso reduciría la necesidad de hacer las cosas repetitivas una y otra vez. Está justo fuera de significado para los scripts de Odinga sobre hacer la escala HTML. Está encendido cada vez, correcto, así que es por eso que tienes tan escala No versión fuera de tu archivo por aquí. Pero entonces, en la carpeta compartida bajo vistas, tienes un poco de edad nazi s H d ya sabes, archivo en. Te metes en esto y no eres bombardeado con un montón de HTML. Pero si das un paso atrás y solo pasas a ver que es regula, doctor, doctor, es HTML hacia donde nos dirigimos. Remolcadores dentro que eran algunas declaraciones metálicas, o charset y para propósitos de diseño web responsive, estos son bootstrap requeridos en el lanzamiento que se ve aquí donde el título se está configurando dinámicamente. Si recordamos el surf por encima de la autenticidad, vemos que aquí dijimos Ver embolsado. Titulado él vista de prueba en el archivo de diseño. Está cambiando con cada página. Eso es un render personalizado encendido, luego la parte estática de la misma, que es mi aplicación SB dotnet. Ya que estamos haciendo un sistema de gestión escolar, cambiaré eso por sistema de gestión escolar. Muy bien, encendido, entonces, algunas de las declaraciones aquí estas funciones son funciones afiladas C. Entonces vemos aquí están a la señal, que significa que estamos superponiendo algunos c sharp en entonces Styles es una clase estática que está llamando a una función llamada render, que luego está pasando en alguna mater's previos, que, si miras el asiático de que se genera a partir de esto, ves el cable real que vincula todos nuestros archivos desde nuestra carpeta de contenido. Está bien, no me meteré en eso. ¿ Verdad? No, Más adelante, exploraremos eso con más detalle. Yo solo quiero que aprecies lo que estás mirando. Después renderizamos algunos de los guiones. En este caso, realmente estamos renderizando solo modernizador, porque ese testículo me quito todo lo demás. Pero luego debajo de esto es donde estamos renderizando los otros scripts, como el J Query y bootstrap Andi sentando algunos parámetros. No. Si sólo nos desplazamos por el Míralo. Vemos cuerpo que vemos aquí. Estamos agregando suficiente barra sería estilo correa manera. Vea aquí que tenemos un enlace de acción. Por lo que tenemos en objeto sobre HTML y tiene una función llamada, en realidad que está tomando algunos archivos, algunos valores como parámetros. Está bien, entonces aquí, sólo voy a cambiar el nombre de la aplicación porque estoy seguro de que recordamos en nuestra edad, ves, aplicación cerca de salir cada vez en cada página. Y quién querría decir nombre de aplicación realmente querría darle el nombre que debería ser. Entonces este fue el sistema de gestión escolar, y luego tenemos suficiente bar home sobre contactos ¿quién? Mira aquí. Vemos que con esto es nuestro bar suficiente. Tenemos cada uno de esos enlaces a casa un perno. Yo soy contacto. No, acabamos de crear una vista de prueba. Te gustaría que estuviera en la barra de números que podemos bro también. Entonces solo voy a controlar De en que duplica la línea, y luego podemos modificar a este sargento, ver probarte ¿Está bien? Entonces el primer bloque de texto habla del dedo del pie lo que es. ¿ En qué se quiere imprimir? Suficiente fuego. El segundo bloque habla al mayo real. Pensé que debería buscar Así que recuerda en el controlador queremos buscar el método por la vista de prueba de nombre. Notado Aquí no hay espacio porque no ponemos espacios en nuestros nombres médicos. Pero tenemos que decirlo como está aquí en ello no es sensible a mayúsculas y minúsculas. Si quieres usar el look está aquí o usa. Mira está aquí o se procede con el caso. Todos vamos a ser lo mismo encima y participa con éste porque no quisiéramos huellas de dedos, la vista de prueba camello cased a nuestros usuarios. Entonces nosotros principamos lo que así queremos o lo usamos aquí en entonces el controlador está en casa. Por lo que este último Permata habla Mira control. Entonces si le echan un vistazo cuidadoso a casa, verían que estamos imprimiendo a casa. Ya sabes suficiente fuego aquí Sin embargo, se está vinculando al método de índice dentro de nuestro controlador de casa. Por lo que se está vinculando a nuestro método de índice en nuestro controlador de casa, que luego buscan las búsquedas para la vista todos los renders de índice andan que sin embargo, le estaban diciendo al usuario que está bien en casa. Y luego a medida que bajamos en nuestras vidas, vemos aquí en nuestro contenido corporal si eso fuera renderizando cuerpo por lo que render cuerpo realmente habla del dedo del pie el renderizado real fuera del CS Ishan de ti archivo dentro de todo este diseño, razón por la cual todo se están renderizando con suficiente comprador y con un filtro. Vimos nuestro pie de página si nuestras opera firmaran el año Andi algunas tomas aleatorias que se habrían generado mi SB hecho si se aplicara. Entonces, ya que estamos cambiando todas esas apariencias fuera de mi velocidad en su aplicación, queremos asegurarnos de que todos digan sistemas de gestión escolar. Simplemente me encanta. Eso es en desplazarlo aquí. Y entonces puedo controlar, cambiar y ser y construir. Asegúrese de que no tengo errores de sintaxis en. Entonces podemos volver a depurar más en DSI, todos o cambios presionan cinco para entrevistar. Entonces cuando se carga nuestra página, vemos aquí que tenemos todos nuestros cambios reflejando. Tenemos sistema de gestión escolar impreso aquí en lugar de nombre de aplicación. Tenemos nuestra vista de prueba. No, no lo hice. O barra suficiente en que tenemos o pie de página reflejando o edad. Entonces si queremos empezar a cambiar contenidos, ya sabes, todo no querría tener un sistema de monitoreo escolar con ESPN dot net impreso . Todo bien ahí. Queremos cambiar el contenido y así sucesivamente. Y tenemos que entrar en nuestra opinión. Faz Pino el contenido y empieza a poner en todo nuestro contenido personalizado para cada página. Está bien, así que espero que aprecien vistas enteras y los controladores trabajan en espera. Todos atan de nuevo al pH de Leo En su conjunto. manera efectiva puedes ir a un barco agregando más contenido y funcionalidad a tu página web. Nos vemos de nuevo la próxima vez 7. El patrón: añadir controlador y las vistas: no en este estudio o estaremos buscando andamios en generar controladores y vistas para la funcionalidad en nuestros sitios web. Hasta ahora, hemos mirado cuál es el controlador, que es una vista. Sostenga un enlace. ¿ Pasarás a crear una nueva vista? Onda tocando a un controlador Lo que no hicimos fue realmente vincular el modelo a todo. Entonces miramos al mar. Miramos a la V. Hemos mirado a la M. Los hemos mirado con miedo, aislamiento y no,en aislamiento y no, realidad los vamos a atar a todos juntos. Entonces en esto para recorrer, miramos un procedimiento o proceso en estudio visual en la mayoría de los frameworks NBC que se utilizan llamados andamios, donde asociamos el modelo con un controlador y generamos la vista en consecuencia. No, tengo aquí en pantalla mi entidad framework Bagram sobre lo que estaremos haciendo para empezar es crear un control de curso. Ah, Andi, Algunas vistas asociadas a funcionalidades de cuervo. Cuatro cursos en resumen, C es para crear Nuestro es para leer. Es para opiáceos. Andi se borra. Por lo que las operaciones actuales básicamente gestionan, se rigen todo lo que un usuario haría alguna vez en un sitio web que es el médico. Entonces sin más preámbulos, vamos a ir a crear controlador de cursos, vinculándolo a nuestro modelo de curso en generar un montón de puntos de vista que se pierden, interactúan con o cursos en nuestras bases de datos. Por lo que para iniciar este procedimiento, pasamos a nuestra carpeta de controladores. Hacemos el derecho, click y click, agregamos. Después seleccionamos controlador. Entonces nos dan este tipo de ventana de mago donde nos preguntan, ¿Qué tipo de controlador te gustaría? Ya ves, aquí tienes M v c cinco que tienes con el FBI a con un montón de otras cosas. Lo que realmente queremos fuera de este es controlador NBC cinco con vistas usando marco de entidad muy específico. Por lo que seleccionamos este en una semana así. Entonces nos preguntaron, ¿qué te gustaría como clase modelo? Entonces a partir de este desplegable, veremos todos los archivos CS que se encuentran en nuestro proyecto listados aquí. Pero no nos interesa cada uno de los archivos CS. Estamos buscando específicamente el que tenga el nombre que corresponda con nuestra misión. Entonces en esta situación, queremos el curso que se encuentra en nuestra carpeta de modelos on. Recuerda, si perforamos propios en los medios de comunicación hace veríamos el archivo CS. Simplemente lo haré rápido y te daré algún contexto. Por lo que perforamos en modelos. Tenemos nuestro en diferentes trabajos. Bagram. Nosotros perforamos eso y luego no Aquí. Ya ves que sí tienes curso que CS y ese es un modelo que queremos utilizar el genera este controlador por lo que una vez más, nosotros directamente los controladores. Nosotros goto ad click controller. Seleccionamos controlador NBC cinco con vistas usando marco de entidad y hacemos clic en agregar Luego seleccionamos de este curso de cuadro desplegable sobre la clase de contexto de datos sería nuestra escuela Montreal entidades DP. Está bien, así que podemos así podemos elegir usar un controlador de cantar. Las acciones están por delante esta vez y luego lo uso la próxima vez en. Entonces nos están preguntando ¿qué página de diseño nos gustaría usar para nuestros puntos de vista? Por lo que vemos aquí tenemos una casillas de verificación es generar vistas. Tenemos una casilla aquí. Esas son sus bibliotecas de guiones de referencia, que realmente no necesitamos hacer ya que nuestra Página de Leyla ya tiene las referencias. Por lo que solo seleccionaremos o pequeña página haciendo clic en el botón de puntos suspensivos. Había yendo a vistas compartidas y luego seleccionamos nuestros diseños. Una vez más, se puede tener múltiplo. También tú eliges poco que sea apropiado para esta situación on Entonces al final de su estaría pidiendo el habilitador de control se puede ver siguiendo la misma convención de nomenclatura . También se genera usando el nombre fuera del modelo que es curso dicen cursos sobre el controlador de palabras. Entonces la convención de nomenclatura, me refiero a adolescentes, luego hacemos clic en agregar, pasará por un ejercicio de andamios. Al final de este ejercicio, se te da un archivo de clase y ves mucho más núcleo de lo que estamos acostumbrados desde o domina . Está bien. No, una vez más o controlador es sólo una clase con el nombre fuera del modelo en esta situación en el mundo Controlador en su heredar de una clase base llamada controlador. Después van a inicializar nuestros objetos de contexto de datos lo que nos permite comunicarnos con nuestra base de datos. Recuerda, sigue diciendo que este diagrama es nuestro puente. ¿ Qué? Este puente está todo involucrado en esta línea de aquí en la línea 15. Por lo que inicializamos este objeto a una nueva instancia fuera de nuestro diagrama de entidades, que establece la conexión del dedo de nuestra base de datos. Entonces si miramos a través, veremos que tenemos bastantes métodos que se generaron, y algunos iniciaron la orientación en cuanto a lo que está pasando aquí. Por lo que el 1er 1 es Index. Recuerda, como siempre, índices, El primer archivo que debería estar alguna vez en cualquier sitio web sobre este devuelve una vista. Pero entonces, en esta situación, vemos que tenemos parámetros en este punto de vista. Muy bien, entonces ves que tienes B B, que es el mismo nombre era nuestro contexto de base de datos en. Estamos ejecutando una consulta contra la tabla de cursos, y solo estamos analizando aún más todos esos toe list. ¿ No tienes un discurso detallado el cual está tomando probablemente un entero. De acuerdo, entonces esa pregunta podría realmente significar que podría ser No, podría ser, ah, valor. Se está preparando que podría ser un no yo devaluo que está entrando en él como un cheque somero decir, si el yo d que se pasa no es que devolver algún núcleo de mala solicitud todo bien, lo contrario se irá en la fuente ese curso por yo d. Por lo que es su db dot cursos no encontrar devolverá ningún registro con esto d y lo guardo en una variable llamada curso. Y luego seguirá diciendo si el curso que se devuelve no significa nada regresa al final de esta consulta de lo que sigue diciendo, Http no teléfono. Entonces ven bastantes devoluciones aquí y ninguno de ellos nuestros puntos de vista. Muy bien, así que resultados reales. Pero entonces los resultados de acción son bajos. Zito tienen diferentes valores devueltos. Siempre y cuando tengas el valor correcto son un valor aceptable. Después tienes un auto para regresar tiempo para que podamos regresar en http Código de estado resultado para Butters sobre solicitudes que podemos devolver. Http. No telefoneado o podemos devolver vista con nuestro curso de origen. Correcto. Entonces buscamos el curso en ese entonces. Una vez nada es no en todo comprueba. Después regresamos la vista con nuestros datos del curso. También tenemos ah crear mis pensamientos stub on. Seguimos a ver que ahí para crear paradas de método Tenemos uno para conseguir que solo regresa de ti y luego uno para publicar, que viene con algunas características de seguridad y algunos encuadernación. Y a medida que avanzamos, los exploraremos más. Y éste. Asegúrate de que los datos que regresan sean válidos antes de que se trate de tenerlos en nuestras bases de datos o curso sea estable en nuestra base de datos en, luego guardando los cambios en, luego redirigiendo al índice. Si se invita al estado, entonces vuelve a la vista con el curso, con algunos mensajes de error indicando lo que falta o reloj fue invitado de la misma manera que tenemos que crear. Tenemos que editar. Entonces ten una edición aquí, que es lo que consigo. Y tenemos una edición aquí, que es un curso que las bases del cordón son bastante similares en. Entonces tenemos un similar es constructo para nuestras eliminaciones y luego tenemos una función de disponer. Por lo que todo esto fue generado solo por ti, agregando un controlador tenía en la clase generando las vistas sobre ti. Consigue todo esto. Entonces la clave en lo que acabo de decir fue generar los puntos de vista. Tenemos los métodos, por lo que tenemos que asegurarnos de que tengamos los puntos de vista que correspondan con estos métodos. En una carpeta correspondiente para este controlador que voy a mi explorador de soluciones. Veo aquí, el controlador fue agregado cursos controlador, pero luego necesito validar las vistas. Y si bajamos a vistas vemos aquí cursos que nombre en este colapso este los nombres corresponden cursos, cursos controlador, carpeta. Y ves que para cada método que está aquí en el controlador, tienes un archivo correspondiente. Por lo que si hacemos clic en Index verá que aquí suceden bastantes cosas que no estaban presentes en el pote índice anterior. Entonces tenemos aquí sobre la inclusión fuera de un modelo, Muy bien, en el tipo suave I innumerable. Por lo que C sharp tiene bastantes tipos de datos. Si llevas un tiempo haciendo esto, estoy seguro de que esto no te sería muy ajeno. Pero se tiene esto siendo incluido, porque con toda justicia, el archivo índice está consiguiendo una lista. Correcto. Entonces recuerda, por aquí, estamos pasando una lista en index off db dot cursos para listar. Por lo que se está consiguiendo un tipo de colección. ¿ Todo bien? Se está consiguiendo una lista de cursos. página del índice debe mostrar todos los cursos. Lo siento. Eso está mal. Archivo de índice. Todos los cursos que habrían estado en la base de datos, como en el momento de descanso. ¿ Estás cargando este discurso? Está bien. Y tienen un buen número de cosas pasando aquí. Tienes este botón crear enlace real para crea en porque índice y creador en el mismo controlador, no tienes que explícitamente registros del control por lo que podría ponerte en podrías ponerte el control en cursos de inglés. Se puede redirigir dedo del pie otro controlador fuera de curso. Esto se sentiría porque no hay creación dentro fuera del controlador de casa, ¿ verdad? Pero entonces, virtud de que están en el mismo controlador, no hay que ser tan explícito moviéndose de índice a crear. Entonces esto funciona. Entonces vamos a crear una tabla. Tenemos a propiedades para nuestros cursos estables Que no incluyan la idea. Por lo que tuvimos i d fueron apretados donde créditos No necesitamos mostrar el i. D en d. M. V. C sabe que no necesitas mostrar el i d. Así que cuando generaron esta página que se aseguraron de solo excluir lo que creen que no querrías mostrar al usuario final De todos modos, así que tenemos un nombre para mostrar para título en uno para créditos y todos esos son ambos de esos se ponen en la sección de encabezado apagado o tabla on. Entonces los vemos inyectando algún C frío agudo aquí donde dicen para cada uno. Está bien, entonces están diciendo por cada elemento en modelo de modelo siendo este aquí o los datos que regresan. Por lo que una vez que pases los datos en la vista, puedes referirlo viendo modelo. Esa es una palabra clave ahí mismo. Por lo que todos los datos, sólo por pasar el ratón sobre la punta de la herramienta, están indicando que esto hace referencia la colección fuera de curso viene de la base de datos. Una vez más, por supuesto que este índice controlador estaba dejando nuestra base de datos, buscando en nuestra tabla de cursos sobre sacarlos todos y analizarlos para enumerar sobre pasar eso a la vista. En la vista se pueden identificar todos esos datos que llegan a través de la palabra clave llamada modelo. Ya que es una colección, necesitamos lista del dedo del pie todo en esa colección cómica. Por lo que decimos para cada ítem en el modelo o conjunto de datos que regresan, queremos nuestra regla. Por lo que para cada ítem se quiere generar una regla y esta regla debe tener una columna para el título en una columna para o créditos y luego 1/3 columna con nuestros botones de acción, lo que diría editar detalles y eliminar que cada uno escribirá al correspondiente en nuestro control. Ah, quiero recordar en nuestros cursos controlador, teníamos ediciones. Yo lo encuentro rápidamente donde crea ediciones que teníamos. Tendremos que hacerlo, pero tenemos crear on tenemos detalles sobre. También tenemos eliminaciones. No, necesitamos poder bró's a esta página o a cualquiera fuera de cuatro páginas. Entonces voy a ir a nuestra página de diseño y asegurarme de que nuestro Leo tenga un enlace que nos pueda llevar a esa página de índice. Por lo que eliminaré o creado previamente la visualización de pruebas. Ya que no lo necesitamos de seguir adelante, solo escribiré manualmente esto. Además, estoy creando un nuevo ahora de propiedad o suficiente enlace sentado un enlace de acción. Por lo que a la señal HTM l dot action link y luego estoy pasando como parámetros. De lo que quiero que se imprima. Sé lo que quiero que me imprima. Serían cursos. Qué desesperados cursos en. Entonces estamos mirando por dentro el índice. Lo sentimos, buscamos el método de índice dentro de nuestros cursos. Contralor. Está bien, así que recuerda es lo que se muestra la acción o la vista que queremos Onda, el controlador, en la que deberíamos poder encontrarla ahora. Habiendo hecho todo eso, vamos a dar un cinco y ver qué pasa ahora. Este es el resultado de nuestro pagado hasta el momento. Y vemos aquí que tenemos un enlace llamado cursos. Cuando hacemos clic en que debemos ser guiados a nuestra página de índice en. Cuando esa página se carga, vemos que está vacía. Tenemos algo en nuestra base de datos, ¿verdad? Pero entonces vemos que es consistente con lo que vimos en la vista que tenemos índice, que creo que está en un cada uno para hablar. Tenemos un enlace que es su crear nuevo, que, que, cuando hacemos clic, nos debe llevar dedo del pie son crear forma. Y luego tenemos los dos rubros para nuestros equipos. Pero después no tenemos reglas y columnas porque no tenemos datos. Recuerda, está generando cada regla para lo que está en la fecha de este. Si la base de datos está vacía, entonces no se generarán reglas que para cada bucle no se ejecuten. Entonces vayamos en bote. Creando algo nuevo así que crea nos trae a nuestra vista de creación que nos pide un título sobre los créditos. Entonces se ve la creatividad que en realidad es auto generando. Y acabo de acercarme al estudio visual mientras todavía estamos en modo de depuración. Y echa un vistazo a la creativa Tú. Vemos que generó una forma. Muy bien, entonces hay una función de ayudante HTML llamada begin form, que renderiza una granja en HTML el entonces, usando algún código bootstrap, estamos recibiendo un formulario aquí que hay un resumen de validación con una clase adherido a ella en . Aquí hay un cierto patrón que a medida que ves el frío cada vez más, te metes en el patrón. Entonces deliberadamente no voy a entrar en los detalles de ciertas cosas porque quiero que veas y aprecies el patrón a medida que avanzas. Esas ciertas cosas saldrán a la luz cada vez más en el camino Siempre vives en este día si tenemos una etiqueta para que veas otro tema, mi función de ayudante se está usando y estamos viendo el modelo sobre estamos creando una legal para un título en darle algunas clases de bootstrap. Perdón. Está bien, vamos, entonces, no. Aquí generamos un editor para Así que hay una ayuda de función que es su editor para más o menos angustia es yo miraría el tipo de datos para el que se supone que debo crear un control y crear un control apropiado. Entonces si tuviéramos un booleano para nuestro humano, ver que necesitábamos crear algo para Editor para generaría automáticamente esa casilla de verificación. Por lo que hay situaciones en las que quieres usar editor para facilidad ahí, momentos en los que necesitas ser explícito para poder ver html dot toma la caja para Todo bien, lo que puedes ser explícito ahí. Ciertas veces quieres ser muy explícito porque editor para tiene algunas limitaciones. Libros de texto para viene con más libros de texto funciones relacionadas que están listas para ir algunas cosas otra manera. Entonces queremos un cuadro de texto para nuestro modelo, y tenemos un poco, um, um, la expresión aquí para decir modelar ese título, y luego estamos agregando atributos de tema. Si recuerdas de HTML, cuando tengas una nación te dirá que puedes agregar en atributos como una clase zaydi, Por favor soldar cuando se trata de cuadros de texto. Por lo que estamos agregando nuevos atributos de Ishijima. Y recuerda, todo esto es C agudo, así que tenemos que tratarlo un poco diferente a todo lo que tendríamos en ST cada demo. Por lo que estamos agregando atributos adicionales fueron agregando una vez más otra colección fuera de los atributos. Ahora, si usas libros de texto para que algunos fuera, la cancha aquí también tendrá que cambiar para que no puedas ver los Nuevos atributos asiáticos de esta manera . Tienes que refraccionar un poco tu cancha, así que para no complicar la situación ya que solo estamos esperando nuestro apetito, lo dejo en editor para adelante. Entonces nos movemos por lo que vemos Editor para está generando o cuadro de texto, y es asignarle una clase bootstrap llamada formulario Bash Control a ella. También tenemos otra sección para mensaje de validación, lo que significa que si estipulamos a nivel de base de datos que este campo no es crédulo, entonces el mensaje de validación sabría que una vez tratemos de enviar un valor nulo o un vacío campo, al hacer clic en enviar en nuestra finca, lo rechazará como vimos en nuestra lógica de controlador, donde comprueba se valora, por lo que si no es válida, entonces lo rechazará y devolverá la vista con los cuerpos que vengan volver a encenderse. El mensaje de validación se mostraría en consecuencia. Entonces lo hace, Ah, gran parte del levantamiento pesado para nosotros en entonces. No lo sé. Todo lo que tenemos son Submit Button, que solo consigue una clase bootstrap por defecto, alguien que cambie el éxito del dedo del pie. Por lo que haberla cambiado para guardar con éxito solo los cambios aún estaban en modo de depuración en Acabamos volver a nuestra pantalla y refrescar Onda bajo. Es para recargar o página con nuestros cambios. Ahí vamos. No, vamos a crear un nuevo curso. Por lo que llamo a este en producción al diseño Web. Claro que vamos. Mi gasto justo en ese entonces, como decía con la edición porque sabe que los créditos se supone que son un entero, así que en realidad nos está dando un cuadro de texto. En realidad estoy escribiendo texto en este momento. No es aceptarlo porque el control que está generando para ello es un recolector de números en sí. Tipo número P aclarar, inspeccionar elemento. Seguro voy a ver entradas tipo para ser número. Ahí vamos. Por lo que me está restringiendo en lo que soy capaz de entrar. Por lo general introducción a lo que el diseño es un curso de tres créditos que sólo podría crear. Y ahí vamos. Por lo que volvemos a nuestra página de índice. Muy bien, Andi sabe, vemos que tenemos una regla generada con dos columnas, una para el título, una para los créditos en luego otra columna, que tenía nuestros botones de acción para editar detalles Onda eliminar, y cada uno me llevará a la página correspondiente según el tipo. Entonces si hago clic en editar y en realidad voy a traer visual studio esta vez alrededor y poner un punto de descanso en nuestra acción de edición, bien, entonces cada método aquí se llama una acción, por lo que el punto de ruptura está sentado ahí aún estaban en modo de depuración activado. Después voy a hacer clic en editar, y luego nos tomamos el tiempo para diseccionar lo que sucede en el estudio visual. Por lo que se golpea el punto de ruptura. Entonces si vuelvo sobre la idea, veo que d quiero. Y eso se debe a que nuestro récord recién creado en nuestra tabla de cursos tiene una idea fuera de uno. Y luego si pasamos por nuestro cordón, vemos que Si yo d es igual interno, este valor son dos caídas, lo que se salta por eso. Después pasa a ejecutar esta consulta, que luego digamos encontrar el curso con el I D uno. Entonces si paso por eso ejecuta esa consulta y pasará por algunas cosas en, entonces debería devolver curso. Entonces si me muevo sobre el curso, veo y que vuelve con un montón de valores generados. Pero puedo perforar y ver los detalles exactos aquí. Ya veremos que tenemos o créditos siendo tres y o título siendo introducción toe Diseño web on. Como decía antes, una vez que haya un lanzamiento en la entidad City, Framework traerá automáticamente los valores que sean ID asociado. Entonces como no tenemos inscripciones que estén directamente relacionadas con este curso en particular que la lista fuera de las inscripciones es cero, está vacía. Entonces si presiono f cinco , continuará. Teoh evaluar Si el curso no es tierra, sabemos que no se sabe porque acaba de ver que tiene un valor, por lo que los valores no saben, por lo que va a devolver la vista con los datos correspondientes que acabamos de buscar, y eso es todo lo que nos dedicamos al procedimiento de cualquier cosa donde entonces dice, Trae este formulario. Entonces vemos que se ve muy similar a nuestros crea, excepto que viene precargado con todos los datos porque buscamos el curso, conseguimos los datos asociados al curso encendido, luego lo pasamos de vuelta a esta vista. No, si hago un cambio aquí, la expectativa es que el curso se actualice al enumerar en el índice. Entonces voy a cambiar esto porque ampliamos nuestros programas para saber que tenemos introducción al diseño Web parte uno on, entonces tendremos una parte para. También puedo editar esta vista porque quiero guardar botón para parecer verde, alguien para volver por aquí. Entonces voy a hacer algunos cambios aquí en este punto de vista. De cualquier manera, quiero que el mismo botón sea verde, al igual que en nuestra página de creación, así que volveré aquí. Seguimos en modo de depuración. Entraremos en la solución Explorer. Encuentra esa vista para que busquemos en carpeta cursos. Buscamos la vista de edición en, veremos que se ve muy similar a nuestro índice crear página en. Entonces modificaremos nuestro botón de envío para tener éxito de Bt y corrió una vez más. Entonces a medida que avanzas, obtienes otro tribunal generado, que en realidad es solo una pauta. Pero se te impulsará e influenciará el darle aquí o un toque individual sobre el cambio. Ciertos elementos, como ves, cabe si vuelvo aquí y refresco y ves enseñando el punto de descanso otra vez, no quiero que haga eso es artistas quitarse los puntos de freno Eso está impredecido. Sólo voy a dar click. Continuar Andi Ahí vemos que nuestros melocotones recargaron. Tenemos nuestro botón verde guardar fuera de curso están los cambios estaban encendidos. Don está fuera de mí. Este cambio de nuevo y luego hago clic en Guardar en. Ahí vamos. Por lo que el cambio se hizo en sabemos tener introducción toe diseño de trabajo ganó el mismo número de créditos en Si miro los detalles, la opción de detalles es hacer algo muy sencillo. Es hallazgo. Qué curso tiene el i d. asociarlo aquí fuera de curso, eso no es visible, Pero si encima del botón, veremos en la esquina inferior izquierda que se está mostrando el enlace por lo que va a cursos slash detalles slash uno. Entonces ese slash uno es ese parámetro que se pasa a nuestra opción en los mentores par. Muy bien, entonces si miro los detalles para ser específicos, veremos encontrar detalles, vemos detalles de resultados de acción. Se está poniendo una permanente. Se llamará idee. Entonces sea cual sea el i d. , está Es, estánaciendo a este enlace justo aquí y que tal cuando se haga clic, va a ser Pasto la acción de detalles en el parámetro i d on. Después se evalúa, asegurándonos de que no estamos perdiendo el tiempo porque una base de datos llamada piensa en ello como cara . Por lo que quieres asegurarte de que vuelvas a tus datos tanto como sea posible antes de que se requiera una base de datos llamada. Entonces aquí sólo estamos asegurándonos de que si no pasó nada, entonces no te molestes en perder el tiempo para intentar buscar algo que va a ser inválido. Entonces comprobamos validamos que esta idea de valorarme bien, puede existir en este punto. Todavía no lo sabemos. Entonces tratamos de encontrarlo encendido. Entonces comprobamos si lo encontramos encendido. Si no dijimos no teléfono, que es como un cuatro o cuatro encendido. Si lo hicimos, entonces decimos Favor de devolver la vista con los datos asociados al curso. Entonces intentemos eso. Y luego vemos aquí, estos son nuestros detalles. Usted página muy simple en. Todo lo que está haciendo es mostrar el título en créditos. Entonces son detalles. Es una página de vista. Es es para fines de visualización. No es para editar o crear, Así que esto sería más como nuestra en multitud. Esta es tu página de lectura, y podemos elegir volver a la lista, que acabará de escribir una chispa al mismo lugar este Woodrow Justo o podemos optar por seguir adelante y editar, que sería el tú la actualización en entonces no obedecemos esto otra vez. Sólo podemos volver a la lista. Y luego a partir de aquí, también podemos eliminar. Por lo que si hago clic, las derivaciones serán conducidas del dedo del pie. Algo así como una página de confirmación, que hizo algo similar al Bt es que buscaba el curso y trajo el curso me sprinting los detalles y luego está preguntando, ¿ Estás seguro que quieres eliminar esto en, entonces, solo para agregar a la estética fuera de la página, solo iré a buscar esta vista de eliminación en. Entonces podemos mirar a través. Podemos cambiar el verbiaje como deseemos podemos decir, OK, borrar. ¿ Estás seguro de que quieres eliminar esto? Podemos poner esto en alerta para que podamos darle una clase, y yo lo doy en alerta. Peligro. De acuerdo, así que esa es una alerta de clase bootstrap. Peligro. Bootstrap cuenta con excelente documentación. Eso lo compartiré con ustedes. Entonces puedes si no eres así Oh, miedo. Con las clases de bootstrap y lo que hacen, siempre se puede ir al bootstrap, obtener resultado bootstrapped. Y tienen una excelente optimización. Donde los escapan todas sus clases, Andi, sus funciones para ti. Entonces hice ese cambio. Después me refresqué para ver mis cambios. Está bien, eso no es lo mejor. Creo que estoy usando la clase erróneamente, pero se puede ver donde las clases de bootstrap ayudándome a simplemente agregar un poco de individualidad a la página, a diferencia de lo que se generó auto para mí en que probablemente quieran que se lea el botón. Por lo que me encontré ese botón aquí es un botón. Es un botón de enviar. Onda cambió eso a BT Indust Danger. Yo creo para éste. Necesito poner alertas que alerta. Así que solo haz eso Guardar y refrescar. Ahí vamos. Por lo que esto se ve mucho mejor. Vemos que las alertas le dan un poco más poniéndose otro peligroso ¿qué? Rojo Inmediata. Muy bien, así que muchas de esas clases de bootstrap que tienes que usar en muelles, pero tómate tu tiempo y mira a través de los ejemplos encendidos entonces también se lee nuestro botón, así que elimino Es solo un espectáculo en el que funciona nuestra corte. Lo que haré también es establecer un punto de ruptura en nuestros cursos. Entonces ya cargamos son get deletes porque tenemos los datos, correcto, Así que tenemos los datos para fines de visualización. Eso es lo que hace éste. No, cuando hago clic en enviar Como con cualquier otra página, necesita hacer algo. Entonces como mencioné antes, cada uno tiene un get on opuesto a él mientras me subo. Entonces se ha opuesto. Entonces obtienes es lo que pasa cuando te bro a la página de edición. Pero una vez que haces click, enviar El post es lo que pasa por lo que veremos en nuestro delete posó ¿qué pasa? No, El mismo punto está puesto, Ben. Voy a seguir adelante y dar clic en Eliminar. Después golpea el punto de freno. Entonces aquí causa. Ya vemos. Esa idea es una. No es ir del dedo del pie. Encuentra el curso y luego Visual Studio 2017. A mí me encantó hacer esta cosa de la escuela donde simplemente saltamos directamente del pie de nuestra línea. Entonces voy a saltar por encima de esta línea, acuerdo? Eso significa que la cantera fue corrida. Entonces si miramos por dentro nuestro rumbo, objeto verá que consiguió el curso. Ese es el yo d. Esos aires, los créditos, y ese es el título el. Entonces se va a ver quitar de la mesa. Cualesquiera que sean los datos que estén en este objeto. Muy bien, entonces. Una vez que se produce esa remoción, necesitamos ver si cambia. Simplemente presionaré F cinco al final. Todo esto, no va a redirigir a nuestra opción de índice, por lo que verás que este también es un gran patrón que ocurre en cada acción. En la acción de edición, vemos dónde están esas alguna operación. Valida ese dato que tiene bean putting desde que la edición es válida el, entonces hace algo donde toca el hecho de que esta entidad fue modificada y parece los cambios. Esa es una forma agradable, rápida de hacerlo en él. Entonces volvemos al índice si miramos a nuestros creadores de crear renderizando la vista. Pero entonces se ha opuesto a dónde está validando luego agregando, guardando el cambio y luego redirigiendo al índice. Esa es más o menos la gripe de cualquier operación cruda. Contextualmente derecho efecto dedo del pie del cordón. Sea lo que sea que haya cambiado a la base , ya sabes probablemente estés creando contenido, así que tienes que hacer articulo top. Podemos ser tus editando Clinton's que tienes que encontrar Es lo que es que eres cualquier cosa y después te avisamos que ha sido editado y luego guardar los cambios. Y luego, en este caso, estamos borrando. Entonces tenemos que conseguir el archivo o el registro más bien que estaban borrando, luego ver si los cambios y luego siempre volvemos a casa a la lista. El listado es lo que nos muestra que se han hecho los cambios, así que sólo voy a ir del pie Presidente cinco y saltarme adelante entonces ahí estamos fueron redirigidos. Índice el. Tenemos una lista vacía. No, puedes hacerlo con cualquier otra tabla de datos que tengas en tu base de datos. El mismo procedimiento que acabas de hacer para los cursos obtiene para los alumnos. Y puede ser un poco diferente para las inscripciones, pero quiero a China y seguir adelante y hacerlo por los estudiantes y crear al estudiante a partir de operaciones usando los métodos y técnicas que acabas de aprender en este video, eres libre de deja comentarios y avísame si tienes alguna dificultad. Estaré más que feliz de atenderte, Dennis de nuevo en tener uno bueno. 8. Gestiónar los cambios de base de datos de base: ustedes chicos. La última vez que lo dejamos, estábamos creando el control para nuestros cursos sobre el uso scuffled en todas las reseñas de Jerry. Te dejé con el reto de seguir adelante y crear el mismo controlador y vistas. O son los estudiantes mesa a alguien para hacer eso rápidamente, si acaso probablemente no sabías qué hacer en realidad, qué tan simplemente es realmente. Por lo que hacemos bien, clic o corremos para un anuncio estable Goto, un hombro seleccionamos controlador M V C cinco con vistas usando un trabajo de marco STI. Después seleccionamos nuestra clase modelo. En este caso , serían estudiantes. Entonces vemos que la mayor parte de la información ya está poblada porque eso es lo que hicimos última vez. Por lo que visual studio está haciendo un seguimiento de nuestras actividades. Inspírate y más fácil. En primer lugar, sigamos adelante. Esta vez usaré un controlador de canto. Acciones es para mostrarte la ligera diferencia en la cancha. Todo lo demás comprueba, así que apenas la semana al final, fuera del ejercicio de andamios sobre Se genera nuevo control para los estudiantes, y vemos que se ve muy similar a lo que estamos acostumbrados de más cursos. Contralor. Adicionalmente, si miramos en nuestra tabla de vistas para ver que tenemos una carpeta nueva para estudiantes con el mismo conjunto de uso nuestras cárceles en caballos. Ahora bien, si miras más de cerca tu control, ves que tienes algunas nuevas palabras de sintaxis, a saber, un cantar sobre un trigo. Estas son partes fuera del soporte, pero generadas a partir de cuando dijimos Usa a cantar funciones en más o menos aligerar tipo de con nuestra mantequilla fría. Y eso es mucho nuestros métodos para correr. Es sincronicidad. Por lo que esto está en consonancia con la necesidad de C sharps de eficiencia y amenazas múltiples continuas para ejecutarse en una sola aplicación. Fuera de eso, se ve que la mayor parte de la cancha se ve prácticamente igual si la comparamos con nuestros cursos . Agujero Controlador. Ahora en este video, queremos enfocarnos particularmente temprano en hacer modificaciones o bases de datos La semana permitirá. Estamos usando una base de datos primero, citando patrón, lo que significa que nuestra base de datos habría existido en entonces construimos aplicación alrededor de su o nuestras bases de datos involucrando constantemente a medida que encarnamos a los niños y amordaza al consciente ya sea por o aplicación. Ahora el reto con este enfoque es que a medida que cambiamos nuestra base de datos, tenemos que actualizar nuestros modelos sobre también opiáceos o poner no. Acabo de generar esto sostienen todos nuestros puntos de vista y este controlador basado en los campos que estaban presentes en más de ocho de estas tablas. Entonces si miro en los datos vis, veré que tengo tres campos ansiedad de acero, apellido, nombre y tasas de matrícula, que significa que todo lo que se habría generado se habría generado en torno a esas partículas se siente. Entonces si le echo un vistazo a mi vista de control, veré que tengo un formulario generado para apellidos, nombre y escrituras de inscripción. Ahora bien, ¿y si necesitara meter a los alumnos? Middling. Dejé eso fuera de la base de datos inicialmente en? No, necesito incluirlo en lo que tengo pasando alguien para entrar a vistas en mi SQL server Object Explorer. Realmente no me meto en mi base de datos Instancia on definido por base de datos, gestión escolar, mesa de TV y hago una modificación a mi mesa de estudiante. Por lo que con razón y luego hago clic en el diseñador. Seguidamente procederé dedo del pie agregar la columna del segundo nombre a esta tabla. Entonces solo vengo aquí en el segundo nombre quería ser un en parte shar 50 al igual que los otros nombres y los nítricos off escrituras para cometer ese cambio. Una vez que eso será, se hace. Sé que necesito Toe, aunque mi modelo de base de datos sea consciente de que hay una nueva columna en esta tabla o en esa clase en particular. Entonces si traigo mi E DMX, veré que los alumnos actuales no tengan problema de segundo nombre. Por lo que hago clic derecho en el espacio vacío en mi modelo Click Up Deeds de Data Bees Thistle. Entonces dame un mago pequeño. Puedo ir a refrescar click tablas en, luego click Finalizar Al final de ese proceso, vemos que tenemos el segundo nombre agregado aquí como columna. Ahora eso me deja dedo del pie hay que actualizar todo lo ordinario dos vistas dedo del pie saber que hay un segundo nombre que necesita ser cualquier cosa o agregado en nuestro crear que es control turno y B y asegurarnos de que todo factura con éxito después de una construcción exitosa. Entonces voy a seguir adelante en definido mis puntos de vista que necesitan ser editados para que godowns por estos titular busquen estudiantes y luego primero es nuestro creativo tú. Entonces necesito replicar más o menos la estructura que tengo aquí. Pobre apellido y nombre en el sistema forma Italia. Considerando que todas son aves similares cualquiera de los tipos y los constructos, solo puedo copiar y pegar este bloque de Cool Onda modificada para que sepamos que quieres medio Por lo que esto está generando una etiqueta para el nombre de pila. . Acabo de cambiar esto demasiado poco y se puede ver que la inteligencia está recogiendo que efectivamente hay Y de hecho, una columna en el modelo causó poco le dije, Sólo entra entonces voy a hacer esto o me dirijo a On también la alegación, Sra. También necesitaré hacer esto para mi página de edición como en esta copia Esta una vez durante esa página de edición se ve muy similar a o crear Page y me limitaría a crear algo de espacio aquí en es el mismo agujero en una vez más nuestro modelo en nuestro cualquier página Sus alumnos en dso se conoce la nueva causa inmobiliaria hecha en paso adicional para que podamos bro a esta página de índice recién creada es modificar nuestros Leal's on coronavirus agregado. Artístico en cursos para D natural ¿escuchas esa línea? Y entonces voy a decir estudiantes on. También, cambiaremos el nombre del controlador a los estudiantes. Podemos decir esto y luego seguir adelante y la gente, una vez que nuestra ventana se lance, verás que tenemos el dedo del pie largo que nuestros alumnos pagaron, por lo que podemos hacer clic en eso y ser navegados a nuestra lista fuera de los estudiantes. Sabemos que no agregamos nada a la base de datos. Y también se ve que a pesar de que agregamos el segundo nombre para el modelo, no hay columna de segundo nombre el en lugar de aquí. Nosotros sí, sin embargo modificado, creado. Por lo que sí tenemos el segundo nombre aquí, Alec Tree edad en. Si sigo adelante y crea, entonces mira do notas que fecha de inscripción nos baja el tipo en nuestro texto libre. Entonces si recuerdas, estaba diciendo que hay ciertas situaciones en las que quizá quieras agregar controles personalizados. Toe nuestro cuadro de texto en el Día 84 tiene algunas limitaciones, por lo que quería probablemente cambiado tipo de datos asociado a esta entrada de texto en set. Es un par de veces así que al menos podemos conseguir el picker de tiempo o encontrar una preocupación geek o scripts Java cortados en el control para poner aquí. Podemos hacer eso que las escrituras mayores pie para No, sólo voy a poner un portón genérico y luego hacer clic crea. Ahora bien, si echamos un vistazo a esto, se ve eso o casi punto. Ese informe está aquí una vez más en índice no estaban mostrando el segundo nombre. No obstante, si hacemos clic en ediciones, veremos que tenemos una ligera anomalía con nuestro programa, no hicimos lo suficiente para asegurarnos de que el segundo nombre se iba a poblar al crear. En consecuencia, sin embargo, agregamos el cuadro de texto al formulario de edición. No hay poco nuevo display it porque no había el segundo nombre comprometido a la fecha de esto cuando hicimos clic en tres s. así que todavía nos queda un poco de trabajo por hacer. Ahora, volviendo a nuestra corte, puedes salir más del mal por un segundo y ver qué trabajo adicional hay que hacer para asegurar que nuestra función de creación funcione. Si echamos un vistazo a los datos, también vamos a ver tan directamente para tabla, creo que datos sobre. Vemos que el segundo nombre era de hecho y de hecho enviar a través como un bajo. Eso se debe a que en el momento de la creación, a pesar de que pusimos ahí los libros de texto y controles o el segundo nombre, no le dijimos al controlador que efectivamente debería y de hecho, por un segundo nombre cuando esté recibiendo más adelante de nuestro vista. Entonces si echamos un vistazo a nuestro controlador realmente rápido en vamos a la poción crea curso veremos que tenemos algo aquí que dice encontrar incluir en tenemos algunos parámetros. Do Lores estudiantes I d apellido nombre fechas de inscripción en segundo nombre del DNO. Ahora lo que está sucediendo en este incluir igual seguido de este string off campos provenientes de nuestro modelo de estudiante es que estamos buscando propiedades específicas de esta clase que se deben incluir cuando nos casa pila u objetos encima para ver si cambia Así que encuéntrame aquí la modificación de que deberíamos tomar asiento enteramente. Apellido, nombre inscribirlo en la parte superior en el medio Él en esta parte es sensible a mayúsculas Zoff, por favor asegúrese de brillar de la misma manera que el inmueble aparece en la clase Andi para las ediciones. También podemos seguir adelante e incluir poco vino pasando al modo de depuración y asistir a sumar a otros alumnos. Entonces ya no deberíamos tener este problema. Entonces vamos a unos estratos. No de hecho módem con intentos de agregar otro. Después hago clic crea y luego tenemos un segundo registro de estudiantes. Ahora bien, si miro al final, es entonces verás volver nuestro valor, diferencia de nuestro 1er 1 donde no había valor comprometido con la base de datos. Ahora si miramos la edad de los detalles para ver todo lo que necesitamos decir de los estudiantes, los detalles realmente y verdaderamente deberían enumerar cada cosa de los estudiantes aquí. Notas. No hay Oriente Medio, así que aún nos queda un poco de trabajo por hacer para conseguir que el segundo nombre aparezca en nuestra G siente edad. Por lo que acabo de repasar rápidamente los detalles y todavía estamos en modo de depuración. Encuentra la vista de detalles en. Podemos ver aquí que detalles Page se ve un poco diferente a las otras páginas. Está utilizando predominantemente la función de ayudante HTML para mostrar nombre de visualización cuatro y display para Así podemos apenas ocho. Este Andi replicó este tipo de lógica en inserciones medias. Por lo que acabo de poner un pequeño nombre en el segundo nombre ver en luego refrescar nuestra paz en. Ahí vamos. Apellido nombre de pila en nuestras nuevas adiciones del segundo nombre de la familia. Además, tenemos necesidades de inscripción. Son cosas que puedes hacer técnicamente es hacer RD Es más atractivo ahora, posiblemente manera más fácil de haber acomodado todos estos cambios a nuestra base de datos en nuestro posterior controlador y ver frío habría sido toe regenera o controlador y basadas en los cambios en nuestro modelo. El peligro para esto, sin embargo, es que cualquier cambio que lo hubieras hecho en desechado el reemplazado por la cancha generi . Así que ten mucho cuidado cuando vas a hacer cambios en tu base de datos con el conocimiento de que probablemente quieras hacerlo manualmente. Por lo tanto, mantener cualquier núcleo que haya procedido. Este cambio de todos modos, gracias por sintonizar en. Espero que hayas encontrado valor este Escuchar. Nos vemos la próxima vez 9. Personalización de una vista: Bootstrap 3: ustedes chicos en este tutorial estarán mirando a casa con vistas generales globales de personalización y nuestras aplicaciones. Estética baratija Más como o aplicación a diferencia del altar generó aplicación. Bento spice v dot net. Podemos rediseñar nuestra página de aterrizaje un viendo en la pantalla aquí en vamos también los barcos lo que Bootstrap tiene para ofrecer para agilizar este proceso. Antes de seguir adelante, necesito recordarles chicos que estamos usando bootstrap tres D Falls. Bootstrap que vino con nuestro proyecto es bootstrap tres. Podemos actualizar a cuatro. Pero si hacemos eso y corremos el riesgo de tener que rehacer mucho fuera del trabajo, así que te recomiendo que sigamos usando la documentación de tira o bootstrap, podemos ir a su página web, que es conseguir buena correa. O simplemente puedes buscar bootstrap, tres sobre quién fue sugerido, y aquí se dará toda la documentación detrás de todo el buen ism que han superado la oferta. No tienes que empezar de cero, pero solo te llevaré a través de un dedo del pie rápido. Apreciar o Wilshire trae a la mesa. Ahora ambas tiras es marco CSS. En pocas palabras, los desarrolladores observaron con patrones de desarrollo. A lo largo de los años, Andi se le ocurrió un montón de clases fuera o estrellas de Chiesa que creen que la gente necesita más , que tenían una primera agenda móvil. Por lo que usar bootstrap ayuda a lograr un móvil primero en diseño limpio, ya que lo habrían respaldado con un estilo CSS comúnmente usado en Sigo uno diciendo esto, pero déjame, por ejemplo, las tablas de cortes. La gente siempre mesas largas. La gente siempre quiere que sus mesas no se parezcan bastante a las mesas. Will Bootstrap nos dio una mesa. Todo lo que tenemos que hacer a la hora de crear y tablas dar la clase iwas mesa a nuestro cable de mesa on. Entonces empieza a lucir algo como esto. Y si recordamos que para que nuestros alumnos en sobre cursos, las mesas se ven ambos fuera de la caja, también se pueden agregar propiedades de fuerza. Se puede hacer frontera. Pero el hecho es que bootstrap está haciendo esto muy fácil porque no lo haces después de nada, ver assist lograr todos estos ladrones en las clases. Esto echa un vistazo a los botones. La última vez nos fijamos en cambiar la mirada de botones enteros, así que vimos que uno escatima TTN y luego e t y salpicar algo. Por lo que tienes et y Dash se dedica a conseguir que esta gente busca botón Bijan Dash Primary para obtener un éxito uno azul a cualquiera de los botones verdes en todo. Por lo que todo está claramente delineado aquí mismo en su página web. Te dan el ejemplo en, te dan el núcleo para este ejemplo en. Solo necesitas traducir eso a tu necesidad y a tu especificación para que puedas seguir adelante y empezar a usarlo. Soportan imágenes responsivas porque soy G dash responsive. Eso significa que tu imagen comenzará a redimensionarse en los gestos de acuerdo al tamaño de tu pantalla. Está bien, para que puedas, Pero, ¿quién es? No recomendaría que intentes comprometerlo todo a la memoria porque puede ser abrumador. Pero como tienes una necesidad, si quieres que algo se deshaga nuestro azul o algo así, puedes venir. Puedes pasar por la categoría CSS, o puedes ir a la categoría de componentes, que tiene aún más cosas. Tienes espacio para lastimar. Tienes tu alerta de peligro versus tu alerta de éxito. Tienes etiquetas que pueden agregar texto en la sección de script de trabajo. Tienes cosas para más detalles. Si quieres de pop Esperanza que se vea atractiva. Tienes pestañas si quieres una experiencia de tina en tu navegador y te dan el JavaScript . Y si recuerdas parte de los scripts que te habrían dado, el proyecto incluye un bootstrap Js. Entonces, ¿no tienes ningún trabajo adicional que hacer sino incorporar esta cancha con la tuya? Andi, utilízalo para tu o beneficio. Por lo que aconsejo que mire a través, Vea lo que necesita sobre el uso de este bajo. Por lo que para esta sección, vamos dedo del pie en realidad re estilo nuestro terreno de aterrizaje iban del dedo del pie. En realidad agregue algunas imágenes en un puntera deslizante bootstrap nuestra sección de página principal aquí mismo. Entonces vamos a ondular toda esta sección de Grecia y luego la vamos a reemplazar por un slider bootstrap. Seguí adelante en bond sobre algunas fotos de Fix a Beta. Ven. Ese es mi ir al sitio gratis, imágenes de alta calidad en inmersión seleccionaron tres imágenes que quiero usar y se usaron esta de vuelta a la escuela. Este 'll one nunca dejó de arder en éste. Por lo que habla de un solo necesitas ir allí. Haga clic en Liberado en Lord Lord en entonces te pedirá que te inscribas. Yo sólo soy muy justo que estás chiflada. Robots on Una vez que haga clic hacia abajo , Señor, iniciará el Donald por ti. Alguien que siga adelante y haga eso para saber. Habiendo hecho eso, necesito meterlos a todos en el proyecto. Yo los hubiera descargado a mi escritorio en No, necesito meterlos en mi proyecto Para seguir usando su sitio web, te recomiendo crear una carpeta sobre ti, poner todas sus imágenes en la residencia fold que te dan para la estructura para todo tipo de casa. Un tiempo de archivo que tal vez no salgan de gator por sus imágenes, así que sólo voy a seguir adelante en contenido. Creo que el contenido es el mejor lugar para poner imágenes basadas en lo que hay ahí en el mismo continente. Agrega en tu carpeta, llámalo imágenes y luego puedo hacer clic derecho en imágenes. Por favor, Dios goto artículo existente. Entonces si el ítem existe, lo que significa que no vas a usar visual studio para crear el ítem. Pero es algo que ya está todo ahí, como en este caso, un archivo de imagen, y quieres traerlo a tu proyecto y haces clic en ítem existente y luego lo encuentras en tu PC. Entonces puse la mía en mi mejor disco superior, así que desplázate y encuentra mi imagen y formé una aquí. Que se jodan los fans Elder a y cambié de opinión era una de las imágenes en su agregado a mi proyecto. Se puede decir el signo más que no están siendo incorporados al proyecto. En cuando sobrepases cada uno, verás muchos previsualización de lo que esta imagen es la mejor práctica o para facilidad de uso. No usarías este largo alter Jerry para nombrar Cool desde la página web. Ahora quieres que tu imagen sea fácil de usar, por lo que quieres renombrarla algo que sea más apropiado para el propósito de que la tengas . Así que quería para trineos llamados Este es como Dash One en la extensión es que J. P. G on nunca renombró Builder a consecuencia y no, tenemos las tres imágenes que necesitamos o o slash yl. Entonces como dije antes, el objetivo no es el cambio de dedo Esa zona gris que debería haber sido representada por este Jumbotron da queremos poner en un slider bootstrap en esa sección. Podemos simplemente dirigirnos al sitio web golpeado de bala para ver la documentación sobre ponerse mal, y esa es la esperanza que hagamos eso. Entonces, ¿en qué consiste la sección de JavaScript? Y busca auto auto auto auto. Eso es lo que tonterías, porque es un auto, entonces y luego te dan un ejemplo. En primer lugar, segundos de diapositiva llevan su diapositiva ya que se puede ver el clic funciona. Y luego mientras te desplazas hacia abajo, ves que te dan una montaña fuera de cancha que se requiere dedo del pie tienen algo parecido esto. Lo que no te dieron son las imágenes que Pero solo necesitas mirar esto, apreciado y luego modificado propósito de cuatro años de antigüedad. Alguien acaba de copiar toda esta sección fuera de curso. Vuelve a nuestro proyecto, péguelo aquí en. Entonces puede parecer un poco abrumador, pero si te tomas el tiempo para apreciarlo, si conoces HTML, ves exactamente lo que está pasando aquí. Pero antes que nada, tomemos un adelanto de cuál es el resultado. Entonces este es un adelanto de lo que obtenemos. Un conceit Z es mucho menos atractivo, y lo que teníamos antes y todavía tenemos un poco de trabajo por hacer lo que podemos ver el camino de nuestros errores y en realidad haciendo click en el IRS. En realidad, enemigo, es algo que es visible. Entonces sigamos adelante y volvamos a estudio visual en DSI. ¿ Qué cambios adicionales tienen que pasarme? ¿ Se ven Carcelle presentables? Por lo que de vuelta en estudio visual, mirando a la cancha, verás un desglose por cada hijo sexual que debería producir una imagen. Está bien, entonces en primer lugar, ves que tienes esta lista ordenada la cual tiene aliados en ella tiene alguna escritura Gibbs entera . Entonces ves que tiene polvo de datos como 2123 Este es stark como activo. Por lo que cero siempre será el predeterminado. Pero entonces, para las diapositivas reales, ve que cada diapositiva aparece en su propia dar ese es el ítem número uno en deseo de número dos en. Sabemos que tenemos tres artículos, así que solo necesitamos toe build on all of this sample cord de acuerdo a lo que necesitemos. Y entonces no aquí ves eso? Sección de gente para los controles que heredero de un remolcador usando algunas clases de torería aquí para parecerse a Pareles en estos aires Nuestros. Voy a un lado para el siguiente y anterior. Entonces lo primero que voy a hacer es modificar la cancha para nuestro primer Slatter. Entonces imagen me fui a establecer la fuente, cambiarla de Ellipsis y tuve esto es espacio de control para conseguir esa insinuación de inteligencia. Recuerdo mi carpeta de imágenes dentro de contenido en luego mis imágenes dentro de la carpeta de imágenes en diré diapositiva uno antes del texto alternativo nuestros puertos Escuchamos para la leyenda Puedo usar un remolcador hilado Ver, planeamos para la segunda sección Haré una modificación muy similar. Por lo que los vaqueros SRC se deslizan a en cambio que nunca paran Mark Um, solo poniendo algunos subtítulos aleatorios y textos alternativos que llenarías años más apropiadamente cuando tengas tu oportunidad de hacerlo después tenemos tres deslizadores, algunos desmontado, duplicar éste. Mueve esto. Existe sobre cambio Esto a la diapositiva tres, volveré y cambiaré estos dos subtítulos más apropiados y texto alternativo. ¿ Qué? Yo solo quiero mostrarles a dónde van ambos poniendo un slider bootstrap en No tenemos que modificar mucho más. Entonces podemos previsualizar eso en. Aquí vamos. Por lo que ahora tenemos un deslizador en el espacio donde teníamos ese texto generado. Algunas cosas que podemos observar serían las alturas variables o cada imagen para que el Carcel empuje y tire de los contenidos de la página. Por lo que querrías tener en cuenta eso Para asegurarte de que tus imágenes estén fuera de las mismas dimensiones en y alma, tu contenido se verá bastante consistente con cada deslizador. Entonces eso es un adelanto fuera de todo. Te vas a barco incorporando componente bootstrap en tu página web. Lo haces a voluntad. En cuanto necesites dedo del pie, es posible que no uses un carrusel que depende de ti. ¿ Qué? Tienes bastantes opciones disponibles para que puedas una herramienta tips puedes adjuntar dropdowns en todo esto, sale de la caja con bootstrap Andi speed, y sale de la caja con bootstrap. Entonces, a menos que vayas a encontrar otro marco que puedas preferir ya que tienes unos cuantos por ahí, puedes invertir algún tiempo en experimentar con bootstrap y ver lo que tiene para ofrecer. No Otra cosa que queremos lograr es modificar este apartado. Teoh solo tienen dos opciones, una para cursos y otra para estudiantes. Entonces como podemos ver donde tres columnas sobre def, miramos en nuestro código, veremos que estamos usando a quien habría atado para dividir. Todos fueron papel, por lo que botas triples. ¿ Construyes llamado cigarrillo de papel o mesa en? Como sabes, cada tabla tiene columnas, por lo que Full Strap tiene un gran sistema que una vez que tengas un rol, puedes dividirlo en hasta 12 columnas sobre. Además de eso, puedes especificar las columnas Khomeni deben estar presentes o enteras grandes. Una columna debe basarse en el tamaño apagado. Las pantallas de pantalla típica en cualquier computadora portátil o computadora estarían en la razón vacía. Entonces te están dando tres columnas. Una cirugía lo en una pistola. Uno dos sobre tres. No, sólo queremos. Entonces voy a quitar el 3er 1 quiero modificar éste, teniendo en cuenta que tenemos hasta 12 columnas que podemos usar a alguien para cambiar este 1 a 6 . A lista de seis on Una vez más, sé que puedo hacer esto porque ya estaba esbozado en las documentaciones. Siempre pueden ir a la documentación y leer en el sistema de cuadrícula para tener una mejor comprensión de lo que está sucediendo aquí. Y luego iré barcos cambiando el título o el título que se está utilizando aquí. Entonces los caballos se ponen y hacen esto. También me cambiaré de pareja. De verdad no necesito ser publicidad. Se lo haga en mi sitio de asistente de dirección escolar, Así que voy a poner un bonito párrafo en. Entonces no necesito estar vinculando dedo del pie en un viaje si todo el camino fuera de mi ámbito, alguien para cambiar este dedo del pie, un botón que dispuesto a mis cursos Así puedo usar mi enlace de acción en algún lugar que mi signo y llamar a mi Iham off helper para mis enlaces de acción en. Entonces quiero imprimirlo toma aprender guerra. Yo quiero que este enlace de acción vaya a los Knicks en este índice estaría en mi curso se está desarrollando. Y luego voy a repetir eso para los estudiantes. Seis. Está bien, entonces yo los ajustes agregaron alumnos subtítulos un párrafo para esa sección. Andi, en realidad en. Entonces podemos seguir adelante en la vista previa. Esto por lo que vemos aquí que son cambios se han puesto en práctica y podemos ver que ni siquiera nos hemos dividido entre los tubos. Recuerda decir que somos 12 espacios 12 toe viene que somos capaces de usar Andi. Dije que quería que cualquiera fuera seis de esos 12. Entonces conseguimos fuerzas que toman hasta seis cuando logramos que los estudiantes tomen para sentarse. Entonces esa es una manera agradable, fácil de conseguir las cosas lado a lado. En movimiento de emisión tradicional, tienes que usar en vivo, y luego flotas hacia la izquierda y luego transitas márgenes en el medio para asegurarte de que estén, ya sabes, a cierta distancia el uno del otro sería correa. Esto te da un gran sistema y esto Hey, ponlos uno al lado del otro. Sólo dime cómo quieres esos tipos de 100 arrestos. Andi, esta altura enterradora para las imágenes tipo de molesto. Entonces no voy a arreglarlo en mi TV para que modifiquen y encuentren imágenes que sean consistentes. No. Otra cosa que queremos hacer es recuperar nuestros botones. Tenemos enlaces, pero queremos que se vean como los botones que fueron los originales. Entonces solo voy a probar proyecto en vamos a añadir clases de Lose Wilshire ahora de los ejemplos anteriores, recuerdas que inicializamos un objeto Eric virgen en objetos distantes. Especificamos que queremos clase de atributo el. Entonces teníamos nuestros valores, por lo que nuestros valores serían unas tiras olvidadizas. Documentación bt n en Bt y dash cualquier clase que quieras. Yo quiero que un grupo sobre alguien diga primaria en lo mismo para detener eso o a los alumnos. ¿ Qué? Voy a encontrarme con éste. Ser un barco más ligero adentro por sólo para que tengamos una diversidad para que podamos refrescarnos y ver cómo se ve eso en Ahí vamos. Entonces vemos que funciona ese horrible círculo. Tenemos orden y más luciendo como un botón en nuestros alumnos parecidos pero también Andi, ya sabes que ambas eran etiquetas de ancla. Por lo que bootstrap Milos u dos estilo una típica etiqueta de tobillo en mí. Parecías un botón. Así que adelante y experimenta con bootstrap. Experimenta con hacer que tu sitio web luzca más limpio que el mío. ¿ Hace el lanzamiento Onda agregando estilos, quitando así la cancha por defecto y cumpliendo es más personalizado 10. Personalización de una vista: datos adicionales: Oigan chicos. Por lo que en este céntrico sobre sumar nuestras inscripciones dedo del pie de nuestros alumnos página de detalles no en inscripción en menos convocatoria en nuestra base de datos comprende un estudiante que d on. Por supuesto que d Esto sirve la longitud de un estudiante dedo del pie un curso lo que significa que tienes muchos estudiantes siendo ligados a muchos cursos. El objetivo detrás de esto es asegurar que al hacer clic en la página de detalles fuera de un alumno , veremos que este alumno se encuentra actualmente activamente inscrito en cursos de X y Z. No, Como recapitulación rápida, sabemos que hicimos nuestro ejercicio de andamios para nuestros alumnos y así podemos crear uno nuevo a su punto de vista. Detalles y eliminar. No, Si hago clic en el botón de detalles, se activará una llamada a nuestra acción en nuestros alumnos Controlador Un centro break points y actualmente estoy en de barco amarrado Onda. Simplemente queremos echar un vistazo al objeto que regresa cuando hacemos clic en detalles. Entonces vamos a buscar a un estudiante sobre la idea que se aprobó en fue 2000 y dos Onda. Podemos ver que uno fue recogido porque no volvimos en todo lo objetos. Ahora cuando miremos en este objeto veremos que tenemos el nombre, el apellido, segundo nombre encendido. También tenemos a las inscripciones. Por lo que este alumno se encuentra asociado actualmente con dos cursos en nuestra tabla de inscripciones. Y cuando salgas rápidamente, depuras más, echamos un vistazo a nuestra base de datos para validar eso claro. Entonces en mi objeto Explorer, sólo voy a hacer clic derecho caballo y mirar el teatro aquí. Tenemos tres cursos. Introducción para ver Sharp. Se trata de un hombre en cálculo sobre inscripción din. Podemos ver que tenemos alumnos con el I D 2000 y dos y rodar el dedo del pie ambos cursos con ideas dos y tres. No voy a comprometer esos dos recuerdos. Onda, obviamente mostrarle esto al humano realmente no funciona. Entonces ahora vamos a ver cómo entidad Framework nos lo hace fácil. El dato se enlaza en los datos de visualización que no está directamente en nuestra tabla dentro fuera de nuestra vista. Entonces aquí tenemos o vista de detalles para el alumno, y solo voy a agregar algo de información a su entender para ver detalles de los estudiantes sobre. Dejo todo lo demás, como está encendido debajo de este último remolcador de enlace dinámico, voy a empezar a poblar con algún cordón que va a generar una tabla mostrando todas las inscripciones para estos alumnos. Ahora bien, esta mesa va a parecer bastante similar. Toe uno al que estamos acostumbrados de nuestro discurso índice. Si recuerdas nuestro discurso de índice tiene una mesa, tiene un top roll con algunos encabezados, y luego tiene una pieza fuera. Ah, eso está generando Rose en columnas basado en los datos que regresan dentro de ese modelo. Ahora sí tenemos un modelo que se está pasando a nuestro discurso de detalles. Pero a diferencia, o página de índice, no es una colección. Sí, sin embargo, tiene sin embargo, una propiedad de cobranza en ella en la forma fuera de inscripciones, que es lo que acabamos de ver en de boat amarrado en nuestro controlador de estudiantes. Por lo que vamos a ir barcos creando una mesa que amueblará rosa sobre columnas en base a los datos que regresan de la recolección sobre inscripciones. El primero que necesitamos es nuestra mesa sobre. Ya que estamos usando bootstrap, rápidamente podemos hacer que esta tabla se vea atractiva simplemente agregando algunas clases de tabla. Entonces veo mesa. Y entonces quería que me convenciera así como que respondiera. A continuación generamos nuestra regla más alta, la cual tendrá nuestros encabezados de tabla. Por lo que para nuestros encabezados de tabla, quiero el título del curso en Entiende control D y duplicar estos. Andi, me gustaría los créditos. No estoy seguro si necesito quitar esto a continuación. Queremos utilizar sobre, reservarte y empezar a generar reglas dinámicamente. Según Toa lo que vuelve en nuestra propiedad inscripciones. Entonces voy a usar mi a signo y escribir la palabra para cada abierto que abierto. Queremos fuego, algo en lo que puedo llamarlo inscripciones. Y entonces tenemos una palabra clave en C sharp llamada modelo. No, esta palabra clave encarna cualquier dato que vuelva al interior de este modelo en él comienza con una M mayúscula alguien para escribir mayúscula y modelar punto. Vamos a ver nuestras inscripciones, que, que, si miramos cuidadosamente el tipo de datos, vemos que es un tiempo de recolección. Entonces para cada uno de estos, voy a generar una regla. Entonces, er en esta regla, quiero dos columnas. Andi, entiendo duplicar eso dentro de esta columna. Siempre digo que no me gusta imprimir texto sin etiqueta. Entonces yo estaba poniendo lo que sea que va a entrar en esta columna dentro de un Peter encendido. Entonces puedo simplemente referirme directamente a la inscripción usando mi inscripción en signo, que no es mi objeto fuera de tipo de inscripción. Por lo que sobre inscripción objeto proporcionará el curso. El núcleo de la sociedad matrícula I d. los alumnos de grado en estudiante i. D. Así que voy a decir curso. Ya que quiero el título del curso, tengo que obtenerlo del objeto del curso. Por lo que entro en un objeto del curso y uso de mi operador hija una vez más en. Entonces podré conseguir el título. Haré lo mismo para el siguiente, y sumaré inscripciones. Eso es caballo, no críticos al final de este ejercicio, lo que tendremos es una tabla que se está generando con todos estos atributos con dos columnas 14 título de curso, uno para créditos. Andi, todos fuera de los datos relacionados para la legibilidad humana para que podamos seguir adelante y entrar en modo de depuración y ver o trabajar las cargas de nadie RPG. Podemos ver con bastante claridad los frutos de nuestro trabajo que tienen o mesa con nuestros encabezados puestos. Tenemos datos legibles por humanos siendo mostrados. Entonces en lugar de mostrar solo el ID está encendido en lugar de que yo tenga que ir y escribir en sus articulaciones para obtener el marco de entidad de datos real nos hizo bastante fácil simplemente llamar a los datos bajo demanda. Ahora dejé fuera una columna porque el estudiante sabe en qué están inscritos, pero no conocen a sus grandes. Entonces solo voy a volver a pegarme a estudio visual sobre modificar. Ah, nuestra opinión sobre voy a añadir una columna para calificaciones. Por lo que duplicé créditos y entiendo decir, crea o verde. Y luego voy a añadir otra columna dentro de esta regla, que ha sido toe tener los datos de avaricia correspondientes. Ahora la codicia está dentro de fuera modelo de inscripción. Entonces una vez que vea inscripciones, entonces tendré el grado predial. Por lo que no necesito ir a estudiante ni ir a curso. No puedo escapar Grande ahí mismo de las inscripciones. Voy a decir este refresco en. Ya veremos o cambiaremos y ahí vamos. Por lo que este alumnado es fresco. Todavía no han conseguido ninguna nota, pero ven qué cursos están haciendo en cualquier movimiento tropieza con su perfil. También verán qué cursos están haciendo. Por lo que esta es una forma realmente rápida de obtener datos adicionales en su vista. Espero que entiendas el concepto. Andi. Una vez que tengas una relación, puedes llamar a la recolección de datos relacionados o llamar directamente bajo datos relacionados para que puedas seguir adelante y cosas, aguantar la situación de inscripción y empezar a crear inscripciones donde te asocias con cursos sobre Did. Podrás ver los detalles de la matrícula con los detalles del curso así como los detalles del alumno . Eso es mirar, y espero que tengas una buena. 11. Agrega validaciones de datos a los Validations: Oigan, chicos, bienvenidos a otro emocionante video en nuestro viaje con s p dot net NBC Desarrollo Web. hoy estaremos buscando agregar validaciones a nuestros formularios. Ahora bien, las validaciones son muy importantes porque cuando estamos aceptando entrada del usuario tratando de iniciar en nuestra base de datos, queremos asegurarnos de que lo que estemos pasando con la base de datos cumpla con ciertas reglas. Por lo menos, una regla puede ser como, ya sabes, esperas un valor de texto para un campo de texto o esperamos un valor numérico para un campo numérico o tu cuerpo de texto debe tener cierta longitud ese tipo de cosas. Esas son validaciones que queremos asegurar que hacemos desde el lado del cliente, lo que significa que no queremos que intente golpear la base de datos con datos inválidos antes de saber si estos datos son admisibles, no lo son. Queremos agregar ciertas reglas a nuestros formularios, tal manera que antes de que el usuario pueda realmente enviar esta información, podamos asegurarnos de que todo coincida con un determinado estándar. Ahora para mantener las cosas alejadas, echaremos un vistazo a nuestra acción de creación en sobre cursos controlador, como puedes ver, um, ya en modo debug. Pero queremos echar un vistazo a lo que sucede cuando enviamos datos. Por lo que tenemos nuestra acción de creación que hace nuestra forma para caballos gratis. ¿ Entiendes? Para sacar eso, rápidamente, rápidamente, haga clic en cursos en. Entonces podríamos crear nuevo, que luego renderiza nuestro creativo tú encendido. Entonces preguntamos, el usuario mira el título de este curso sobre cuántos créditos no debería ser. Este es un número encendido, pero no debería poder poner en texto. Ese tipo de cosas importan cuando se quiere validar la información que regresa. Si echas un vistazo a lo que sucede en el post, ves que comprueba si se valora el estado modelo, lo que significa que está evaluando toda la información que acaba de pensar del usuario y viendo es válida esta información? Lo que vamos a hacer en este video es configurar nuestras propias validaciones de set off para que esto evalúe automáticamente nuestras reglas y tome una decisión en base a eso. Pero antes de hacer eso, vamos a echar un vistazo a la base de datos y vamos a echar un vistazo a lo que sucede cuando tratamos de enviar información Si echamos un vistazo a la mesa del curso, que ya tenemos aquí en adelante, mira al diseñador. Ya veremos que ambos títulos en columnas de créditos están diseñados a un bajo sin valores, lo cual , para ser justos, probablemente no sea lo mejor para hacer, porque entonces me permite crear un curso sin título y sin créditos, lo cual realmente no me da sentido. Golpea mi punto de descanso ahora, solo continúa. Andi sigue adelante y en realidad crea ese disco vacío con un Novalee por título Onda. Nadie para Crates. Andi. No hay nada ahí, que es algo que realmente no queremos que un usuario pueda hacer. Por lo que el primer paso sería cambiar las reglas de validación se cambian reglas de tipo de datos en o base de datos para que podamos volver a visual studio, traer sobre diseñador para nuestra base de datos de cursos, y decimos que queremos no solos lo sabe así que no puedo llevarlos solos, lo sabe. Entonces podemos hacer click fuera de él. Entonces decimos fuera de la base de datos. Esto nos va a dar un error como ven aquí abajo, porque entonces estamos sentados o base de datos no aceptó, sabe mientras tenemos valores que existen. Entonces sólo voy a quitar ese no registro. Andi, Desde que tengo micro operación, sólo lo hago aquí ya que funciona mi corte. Entonces borra esto. No hay registro. Cómetelo una vez más, llegamos a un punto muy. Yo sólo voy a seguir ahí. Se retira para que sepamos que podemos reintentar nuestro guardado. Por lo que hago clic un poco en la actualización de nuevo en entonces es exitoso. Esta vez. No Little Strand tuvo un curso sin título y sin créditos una vez más. Entonces vamos a dejar estos en blanco porque queremos probar. Si cambiar el no sentado sobre las reglas que rigen nuestros tipos de datos en nuestra base de datos será lo suficientemente efectivo para activar aquí validaciones. Entonces cuando hacemos clic en crear, vemos que en realidad golpea por error. Si golpea a excepciones en que algo sucedió mientras intentaba ejecutar esto. Y si nos desplazamos hacia abajo y leemos los detalles, dice que no podemos insertar sobre el valor del amor en el tipo de columna. Entonces vemos que alguna cantidad fuera de validación en realidad está ofreciendo aquí. Pero esto probablemente no sea lo mejor porque no quieres que tu dedo de aplicación haga una pausa así cuando el usuario lo está usando, o descarta estas manos errores que usándome no necesariamente entienden. Tan eficaz. Continuar. Entonces se ve que la página precede al Señor. Un error de aspecto muy desagradable que el usuario típico puede no necesariamente saber procesar y yo no quiero ver en absoluto. Entonces vamos a tener que modificar un poco este comportamiento, Así que voy a salir rápidamente, devolve más adelante. Entonces nos pondremos a trabajar. No, a fin de agregar realmente estas reglas de validación, tenemos que usar algunas clases afiladas C y suficientes algunas implementaciones tipo Opie puntera tienen muy fluidas, Andi. Solución algo desarticulada pero unificada. Y eso suena como una paradoja. Pero a medida que lo paso, aprecias lo que estoy diciendo. Entonces lo primero que queremos hacer es remolcar echar un vistazo a nuestro modelo. Por lo que dijimos que queremos empezar a sumar validaciones de nuestros cursos. Por lo que estamos solos en nuestros modelos Boulder en nuestro diagrama mixto de medios en. Después nos emocionamos en nuestro modelo el TT on Mira nuestra clase de curso. Tenemos que apreciar lo que hay aquí. en No recordemos que cada campo que está delineado aquí es sinónimo de lo que está en la base de datos. Entonces el padre vemos aquí que el crédito sigue siendo valor inconocible él es que creamos o más tarde, béisbol. No lo hicimos abiertamente nuestros modelos. Entonces ese es el primer paso que necesitas dar a algunas personas le arrancó a Edie un Bagram mixto. Después hacemos click derecho en el espacio abierto y hacemos clic. Espero que desde aguja esta gente refresque las mesas y haga clic Finalizar esto, luego recargas son tablas y desde la última vez que estuvimos aquí, agregué segundo nombre y fecha de nacimiento a nuestro club estudiantil. Ahora, ¿recuerdas que cada vez que actualizamos o hacemos un cambio de cualquier tipo de nuestro diagrama que necesitamos construir Así que puedes ir a construir, hacer clic en la solución o mantener presionado el cambio de control y estar en eso realmente hará efecto una compilación operaciones e ir a hacer ese turno de control y estar en la mía ya está construida. Entonces cuando vayamos a nuestro curso ese archivo CS, veremos que se actualiza para demostrar que ya no es un valor notable. Tiene que tener un int. Las pruebas de Andi tienen una cuerda en la prueba han ileso. Estás aquí para que veas que este cambio se ha hecho con éxito. Entonces ese es un paso uno para la validación. Asegurarse de que nuestra base de datos refleje nuestras ambiciones. segundo paso a nuestra validación es crear lo que llamamos datos de método Las clases son demandadas necesitan amis que sientes que llamas meta data, que es más o menos datos sobre datos. Entonces en este caso, tenemos más adelante en la forma fuera de nuestro modelo. Nuestra clase son nuestras tablas de base de datos sobre los datos, un barco que serían descripciones que queremos. Y en este caso, las descripciones que queremos serían nuestras reglas de validación. De acuerdo, Entonces lo que queremos hacer en esta coyuntura es crear algunas clases que describan reglas que gobernarán sobre los valores aquí. Ahora, desde el trabajo, estamos a punto de hacer preocupaciones a los modelos y el mejor lugar para seguir adelante y crear los incendios que necesitamos estarían en la carpeta de modelos. Pero entonces si buscas en los modelos para allá, ves que ya tienes una especie de variedad. Adi rígido. Creaste el proyecto de la manera que lo hice con la cuenta de usuario individual configurada al inicio, Entonces tendrías estos modelos de vista ya existentes. Entonces para no mezclar y mantener esa separación fuera de preocupaciones, solo voy a crear una nueva carpeta sobre la voy a llamarla Meta Classes on, luego dentro de clases medias. Entonces tendré esas clases de meta data a las que aludí Solo sé el 1er 1 que creo fuera curso es uno para cursos. lo que con razón por favor agregue Crear una clase en. Voy a llamar a éste cursos de Dios. Y entonces eso me dará esta clase vacía. No. Mi primer objetivo es cumplir con este espejo de clase vacío mi modelo real para poder volver a mi curso ese archivo CS en. Encuentra todos estos inmuebles que están ahí para mí. No tengo que traer. No tengo que valorar que sea eso. Curso I d porque sobre la creación hay una guitarra. Cualquier operación. No necesitamos validar cuál es el cuerpo aquí, pero quizá queramos restringir cualquier título del curso toe pelusa off. 50 on. No querríamos que la gente pusiera 50 créditos por cualquier curso que estén creando. A lo mejor el máximo por encima de los críticos que cualquier curso puede ser es de ocho. Entonces sólo nos vamos de pie. Copiar a estos dos más. Póngalos en nuestra clase de meta posterior, luego proceda dedo del pie, añada o validaciones antes de seguir adelante. Para poder sumar nuestras validaciones o lo que llamamos datos sobre notaciones, tenemos que incluir nuestra biblioteca que nos da esa función por lo que veremos usando nudos del sistema del modelo de Polonia. Eso es más tarde en las notaciones. No, puede que no recuerdes esto, pero entonces cuando veas el patrón que estoy a punto de usar es tu estudio realmente reconocerá este patrón en la ciudad que, Oye, esto es ilegal. Tienes que incluir esta biblioteca para usar esto en. Entonces procederían a sugerir que incluyas esa biblioteca. Entonces, como dije, lo primero que quiero hacer es incluir una tierra de cuerda fuera de 50. Por lo que literalmente voy a decir longitud de cuerda y su inteligencia lo termina para nosotros en. Voy a ver 50. No, si elimino esto con aviso que no se ha convertido en la vida del tipo de todos los demás, algo avaricia fuera. Pero éste es en realidad texto blanco negrita. Si eliminara esto que escribir, esto causaría un estudio visual temprano. Y entonces me sugerirían que necesito esa biblioteca para que siempre puedas empezar a escribirla antes luego incluir la biblioteca más rica, activa o incluso simplemente incluir esta biblioteca, y entonces no tienes problema para avanzar. También dije que ex entero quiero restringir el rango de valores para ser de uno. Entonces eso significa que no se puede tener un curso con cero créditos en él nunca debe pasarlo. No, es digno de los nodos que en realidad puedas incluir estos directamente en tu curso. Eso es año. Por lo que no tenías que ir necesariamente a crear un archivo completamente nuevo un trimestre entero en todo el nuevo archivo y luego empezar desde cero y poner esas teorías realmente los pondrían justo aquí por encima de título en ambos créditos. El inconveniente de esto, sin embargo, es que cada vez que se genera el modelo o Rita regional están fechados o cambian y construyes tu proyecto. Entonces en realidad vas a tener este archivo CS así como todos los demás. Nos quedamos aquí renovados, por lo que cualquier cambio que le hicieras será desechado. Entonces, ¿de verdad no quieres hacer eso? Porque eso llevaría a mucho trabajo libre. Y hay que hacer esto cada vez. Por lo que estoy sugiriendo que cree este nuevo archivo en. Entonces lo asocias a ese modelo usando una clase parcial sobre que tenemos eso. Como dije, está articulado porque en realidad son archivos diferentes, pero unificados porque se están haciendo referencia unos a otros. Entonces no importa lo que pase aquí. Aunque la tabla de cursos se apodera para existir. Estos cursos y la tabla de cursos de metadatos no invadirán de ninguna manera la operación fuera su asistente. Entonces a continuación vamos a crear en realidad otra clase. Andi en C agudo. En realidad se puede usar un alto el fuego. Los agujeros, muchas clases. Algunas personas dicen que es mala práctica. Algunas personas lo practican, depende de ti. Puedes decidir qué quieres hacer. Yo sólo voy a usar este uno de los equipos de la CIA llamados meta cursos de datos. Andi, sólo voy a crear otra clase pública, pero ésta va a ser parcial, por lo que público clase parcial on. Voy a darle el mismo nombre que el modelo con el que quería estar asociado. Entonces esa es una de esas calificaciones, o Beatrix, donde puedo crear Lo sentimos, ese nombre del curso de clases puedo crear una clase parcial y darle algunas propiedades sobre ella funcionará en conjunto con la clase original. Lo que quería hacer, sin embargo, es asociarse con la clase de metadatos data. Entonces usaré otro dato sobre la notación sobre nosotros un meta comer un tipo en. Esto es algún c afilado de fantasía que va a suceder aquí, pero puede estudiar este patrón simplemente no son un agujero que hacer cuando sea el momento adecuado. Por lo que quiero asociarlo con cursos, meta data. Por lo que al final de este ejercicio, habría creado una clase de meta data la cual tendría notaciones de datos que regirán las validaciones fuera de tus campos en. Habrías asociado con la clase viniendo de tu modelo justo en un muy indirecto sobre Opie, como nosotros nadie cambio final antes de seguir adelante. Esto es muy, muy, muy importante. Y es un error común que la gente se topa con tratar de mantener esa separación fuera preocupaciones Pero la clase parcial que definiste necesita estar en el mismo espacio de nombre que la clase que es. Bueno, digamos aparte. Entonces si voy a cursos sobre chico, miren el espacio de nombres y vean que es en la gestión escolar donde miramos los modelos, donde el espacio de nombres es para la clase parcial. Ves eso es, en modelos pensados clases de metal. Entonces cada carpeta determina esa jerarquía de espacio de nombres, ¿verdad? Entonces vamos de la carpeta Project School Management Toe llamada Modelos. Por lo que la escuela que mide el dedo del pie se llaman modelos para otro titular llamado clases de letras, y ese es su espacio de nombre. Entonces lo que queremos hacer es quitar las clases de metal del espacio de nombres. Podemos dejarlo físicamente en la carpeta, pero el espacio de nombres lo asociará con esta carpeta en cualquier otro archivo de esa carpeta. Entonces al hacerlo, estamos poniendo o clase parcial sobre la paridad el sentido del auto de arte superior con sus homólogos originales para que podamos seguir adelante en realmente depurar y ver si nuestra validación funciona a nuestros invitados. Por lo que veremos en la sección de cursos en solo ejecutar algunas pruebas para ver si nuestras validaciones están funcionando. Entonces vamos a crear nuevo en. Entonces, primer lugar, sólo vamos a hacer clic en crear. Por lo que la expectativa es que una vez que se estén enviando datos inválidos a través, se re tanto nuestros intentos de crear un registro en esta súplica al aire un mensaje para que pudiéramos crear en sin sentir nada. En nuestra vemos que las recargas más grandes con un mensaje de error se requiere el campo de créditos . Tenemos podemos revisar rápidamente de dónde va ese aire el señor que acaba de salir. Estoy trayendo un estudio visual todavía en modo de depuración. Andi, sólo voy a pasar a nuestra vista para crear en cursos sobre. Entonces sólo podemos echar un vistazo a lo que está sucediendo en esa sección de créditos fuera de la granja. Entonces recuerda, tenemos esa etiqueta, que nos da la palabra créditos on. Entonces tenemos las ediciones que nos usan sobre cuadro de texto, pero luego rojo debajo de que en realidad tiene un problema. Mi ayudante, eso es enviar de vuelta un mensaje de validación. Muy bien, sobre vemos que el peligro de bash de texto de clase bootstrap está siendo un vuelo. Entonces eso básicamente es ver que una vez traté de presentarme. Yo sólo voy a ir a mi contraloría de verdad rápidamente en poner un punto de ruptura justo en esta decisión. Por lo que crea. Y si es ese mismo punto, entonces evalúa si se valora el estado modelo y se ve que esto está evaluando las caídas, como todas las demás veces en los ejemplos anteriores donde validó se hizo realidad. Entonces si esto valida lo verdadero, entonces eso debería suceder. El hecho de que vaya de pie caídas significa que simplemente regresará la misma vista, que es nuestra vista de periodo. Andi. Devolverá los datos que se estaban enviando, sabemos que no intentamos enviar nada. Entonces todo vuelve, no tiene cero encendido entonces eso es lo que desencadena la pantalla apagada o el mensaje de validación. Entonces si pongo un título y se puede ver que estaba probando esta cosa, Así que puse un título con claramente más de 50 edades, y para recordar que son validación. Regla cuatro cursos dicen es que sólo debemos aceptar 50 son hasta 50. Entonces si tomo, creo, creo, lo golpea de nuevo. Y dice que el estado no es válido, por lo que devuelve la vista con los datos sobre que vemos, recuperamos nuestros datos. Cuánto tiempo a un lado en esto jugado son un mensaje de que estamos superando o mucho mamá Lynn. Si veo un curso crítico 10 una vez más recuerdo eso o regla de validación dijo 1 a 8. Entonces eso significa nada menos que uno y nada más de lo que disparará en Aramis es si pudiera crear una vez más Son nuestros puntos de ruptura. El modelo de validez es falso, por lo que podríamos continuar. Se mostrará en apropiado Aramis está mostrando al usuario. Oye, tu líder se equivoca por esta razón. Y así esta es una característica bastante cool que podemos usar el asegurar que para los usuarios se estén quedando dentro de los confines fuera de lo que esperamos para nuestros datos para que pueda crear un curso legítimo es ser los Nets y V. C. Validación sobre eso podría ser un curso crítico sobre. Entonces podría crear y luego vemos tetas son puntos de ruptura en este momento. Todo es válido en porque es válido. Seguirá adelante y lo agregará en DSI de los cambios y luego redirigirá a nuestro listado fuera los cursos. Por lo que presiono Ponting, la expectativa se cumple ahí tenemos sobre el brandy, por supuesto, para que así podamos ir a establecer validaciones en tus campos. No hay anotaciones de datos realmente sirven a un propósito mayor que simplemente sentar reglas de validación. En realidad pueden influir en lo que se muestra para un formulario o para el valor en el nombre de visualización para las funciones de ayuda. ¿ Entiendes? Saltar por encima de los pies Es tu estudio realmente exigente y mostrarte a lo que me refiero. Sí recuerdo que tenemos etiqueta cuatro en entonces en nuestra vista de detalles, sí tenemos nombre para mostrar por lo que en realidad puedes usar datos una notación para influir en thes La forma sencilla de cambiar esto sería demasiado grave y reescribir lo que quiere. El inconveniente de eso es si el campo cambia o algo sobre lo que se debe mostrar, cambia y lo tienes sentado en diferentes puntos de tu proyecto. Entonces vas a tener que pasar manualmente y cambiarlo en todos esos puntos que pueden ser tediosos. Si por más penetrante, utiliza el tema de la función en, entonces usa su anotación de datos que una vez que cumpla con el cambio en la notación de datos se hará justo a través de su después de Keisha. Entonces así como un ejemplo rápido para nuestra forma de cursos, tenemos título y créditos, al igual que los campos están en más de ocho de estos títulos y créditos todo derecho. Entonces como aparecen en nuestra base de datos, eso es todo lo que se crean en nuestros créditos de título modelo. En eso es lo que se mostrará en nuestra etiqueta para en o título de página en créditos. Si vas a detalles, vemos título y créditos. No, parece inocente, y parece poco importante para los cursos porque sólo tenemos una palabra. ¿ Qué pasa con el caso fuera de los estudiantes, donde realmente estamos recolectando nombre, apellido, matrícula ocho y otras cosas Así que puedes ver aquí que el apellido aparece como lo hace en la base de datos sin espacio, ningún espacio discernible aquí para la legibilidad humana. Si hacemos clic en detalles que ven todo sobre los estudiantes y una vez más esto no es muy humano, legible o amigable. Ahora, cuando vamos a los estudiantes, diferencia de los caballos, no tenemos una sola palabra, sino que tenemos dos palabras, así que hacemos click en los estudiantes y vemos que tenemos apellido, nombre y en Roman en sin espacio discernible entre estos nombres y etiquetas, y eso no es muy fácil de usar. Eso no es bueno. Queremos asegurarnos de que nuestros usuarios miren nuestra pantalla y se sientan cómodos absorbiendo y digiriendo nuestra información. Si voy a los detalles, ve, es una situación muy similar. Entonces vamos a tener que usar alguna anotación de datos, dedo del pie, limpiar esto y hacer que nuestros alumnos sean mucho más amigables más tarde cuando estemos leyendo la información. Entonces de vuelta en el estudio visual que queremos hacer es crear dos clases para asociar con estudiantes una para nuestro mental más adelante, una para rápido más parcial Andi fueron llamados ya que creé este más viejo aquí metaclases o brazo . Lo hará tampoco. Pero posteriormente necesitamos cambiar el espacio de nombres para que todo fluya sin problemas. Alguien directamente malo va a clase y estamos creando estudiantes. Sí, señor. En ese entonces, la manera fácil de hacer esto es solo una copia. Todos los campos que están regresando de nuestro modelo original en nuestra base de datos perforamos hacia abajo en la expulsión media, encontramos estudiantes que CS y luego podemos copiar a través de todos estos sí notan una vez más que estas cosas están disponibles. Entonces para tu propio propósito, puedes seguir adelante y cambiar el ritmo de estos opiáceos tu modelo. Pero realmente solo necesito obtener las anotaciones de datos aquí para los metadatos de los estudiantes. Entonces los copié a través y queremos ejecutar algunas etiquetas personalizadas para todas estas necesidades de estos campos del 1er 1 Voy a hacer su apellido y voy a ver longitud de cadena . Andi, sólo voy a montar una validación. No quiero que nadie entre a un enlace de cadena fuera de más de 54 apellidos. Entonces estoy sentando una validación aquí mismo. ¿ Viste que se está mostrando la flecha y visual studio me está diciendo que necesito incluir esta biblioteca para poder utilizar esta función. En segundo lugar, quiero ver que la pantalla necesita toe tienen nombres en ir a establecer una transmisión personalizada. Siempre se puede prestar atención a los consejos de herramientas ahí, guiándolo siempre en cuanto a qué valores pueden entrar. Queremos nombre, que es lo que se va a exhibir en la industria U I. Esa descripción y determinar en qué se encuentra quiero mostrar en el apellido nombre del espacio. Muy bien, así que nos estamos alejando del apellido como una palabra percibible a dos palabras sobre las que sólo pueden reutilizar estas 100 estaciones para el nombre. No tengo más de 50 en un nombre de pila. Simplemente pone espacio para que sea una inscripción más legible. Es bueno, no necesito precisar una longitud porque sea una fecha. El tipo de datos ya está establecido. Es un mucho sí sabe De todos modos, Andi, quiero mostrar las necesidades de inscripción con esta pieza. O mejor aún, ha cambiado un poco y Romanos y recompensarlo solo para mostrarte que no es un asunto de nada sólo ponernos la paz aquí. Puedes etiquetar comer lo que quieras en tu formulario. Está bien, sobre mí. Simplemente haz lo mismo con Middle Liam. Por lo que el segundo nombre am limitando el número de personajes sentados fuera del espacio medio, nombre y fecha de nacimiento tendría reglas similares para la inscripción, come y símbolos odia de todos modos. Por lo que este idiota fuera de nacimiento y luego el segundo paso fuera de todo este proceso de transformación, es crear un público más público Harsh. Ah, así en llamarlo estudiante Onda asocian el meta odio una clase con ella y se puede mirar hacia atrás a la escuela anterior. Pero sólo voy a apuntar aquí tipo de datos Meta en luego en corchetes vemos tipo apagado. Perdón. Tipo apagado. Andi, deletrea que Debería ser tiempo libre estudiante meta más adelante como nuestra final después de lo cual probablemente podría haber llegado primero. En fin, queremos asegurarnos de que nuestro espacio de nombres sea el mismo que el nombre Espacio por nuestra parte se dirigirá a clase Y luego habiendo hecho todo esto, podemos seguir adelante y continuar con nuestros desarrollos están en depuración y ver si todo clics No, Cuando se carga la página de nuestros alumnos, puedes empezar a ver la diferencia es que ya ves ese espacio nable desierto entre apellido fecha de nombre fuera de la inscripción Así que las etiquetas han cambiado. Si vamos a crear nuevo ver que las etiquetas para el formulario han cambiado un poco nombre fecha fuera inscripción alguna vez incluirá la fecha de nacimiento en la edad crear aún detalles Así todas partes eso es dinámico Ali usando ese HTM un ayudante que apuntamos arcos en detalles. Este bebé y cuatro o en el crear tienes etiqueta cuatro o en nuestro índice. A continuación, tenemos esta culpando por todas partes de que tienes algo así. Al configurar o anotaciones de datos en sentar aparte meta class, verás las diferentes etiquetas que establecemos siendo mostradas para nuestros usos en eso es de hecho y de hecho, cómo vas a personalizar. De qué se juega esto sin ser demasiado intrusivo, Andi, al aprovechar la flexibilidad que te da este marco. 12. Introducción a la gestión de usuarios web: Oigan, chicos. Por lo que bienvenidos a este nuevo video. Tiempos emocionantes por delante. Vamos a estar buscando la autenticación de usuarios en nuestro sistema de gestión escolar . Ahora, hasta este punto, hemos estado mirando cómo hacemos para crear contenido, poner nuestra base de datos. Cómo crear cursos estudiantes. Bueno, realmente no hemos mirado a controlar quién puede hacer qué en eso es lo que se lee la autenticación de usuario todo sobre poner en que se necesita registrarse en Le Guin mecanismo sobre restringir el acceso basado en si estás registrado versus si no estás registrado, qué puedes acceder si estás registrado ese tipo de cosas en. Ahí es donde queremos empezar hoy. Desde el principio este do totalmente habría notado en la esquina superior derecha fuera para suficiente bar que teníamos un padrón nacido y tuvimos una maderera nacida. Esos han estado ahí todo el tiempo. No he hecho clic en ellos abiertos a este mismo video cuando realmente vamos a ver qué pasa ahora, es de destacar que esto se habría generado para ti desde el get goal on cuando digo que se vayan. Es decir, cuando estabas creando el proyecto. Había una opción ahí que te preguntaba qué tipo de autenticación quieres. Andi, Tenía algo para conos individuales y tal y así sucesivamente. Nos meteremos en eso. Traigo a través de esos pasos para que puedas volver a familiarizarte con esas opciones. ¿ Cómo seleccionó ninguna autenticación que ningún trabajo podría haberse hecho de antemano. ¿ Has seleccionado concepto individual de liberado, que es lo que hice. Hubiera conseguido estos botones así como alguna cancha generada auto Eso habría estado en toda la plantilla del proyecto, como lo hubieras visto desde el inicio. Entonces para empezar, vamos a caminar por el estudio visual. Tan solo crea un proyecto simulado sobre te llegarás a ver las opciones exactas a las que me refería . Entonces aquí tenemos visual studio una vez más sobre esto debería ser una página demasiado familiar. Una vez que abres un estudio visual, se enrutan a este pH de inicio donde quieren saber. ¿ Quieres algún proyecto, etcétera, etcétera? Podemos simplemente ir a nuevo proyecto, crear nuevo proyecto seleccione Aplicación web. No te voy a dar a un nombre específico porque realmente no voy a crear cuando sólo quiero mostrarte de lo que estaba hablando. Cuando seleccionas NBC y luego a la derecha, ves que puedes cambiar la autenticación. Por lo que la autenticación correcta sabe eso, también. No me autenticación porque el último proyecto que hice, lo creé sin autenticación. Hay formas de conseguir la autenticación en. Tienes que conseguir algunas bibliotecas de identidad y hacer algo de dinero va a funcionar tú mismo. Pero entonces siempre se puede cambiar la autenticación desde el punto de creación en adelante. Después haga clic en conos de usuario individual para que sí tenga trabajo o escuela son conos, que lo vincularían a buscar cargar cualquiera de autenticación de windows, que probablemente usaría, como, aguantado para un tipo más interno de Internet de sentado. Bueno, entonces quisiéramos usar conos de usuario individual porque no estábamos necesariamente seguros de quién va a estar accediendo. Entonces supongo que, en base a la naturaleza de tu proyecto, puedes usar individual o puede usar retenido. Pero para ello, voy a usar los conos de usuario individuales en si lees la descripción, dicen, dicen, para aplicaciones que historias de perfiles en una secuela de bases de datos en ella también permite a los usuarios registrarse usando bellotas existentes para plataformas de redes sociales. Muy bien, así que en realidad genera toda esa cancha y esas interfaces, y solo entras y enchufa lo que se requiera unos cuantos en consecuencia. Para que solo pueda seleccionar el cono de usuario individual hablar, Ok. Y luego cuando haga clic, OK, entonces estaría preparado el proyecto, como sabemos. Por lo que de vuelta a nuestro proyecto fueron desde el principio. En realidad seleccionamos conos de usuario individual. Podríamos ejecutar una registradora y ejecutar un maletero. Por lo que sólo voy a caminar rápidamente por el padrón on mostrarte cómo funciona la cancha. Esto está estrictamente fuera de la caja. No he hecho ninguna modificación en. Podemos poner en una dirección de correo electrónico. Ya puedo ver. Y veo que ya tengo uno aquí, y puedo usar un pastor. Google me está sugiriendo uno muy complicado. Yo solo uso eso Y luego hago clic registrarme en su hace, fueron enrutados a la página principal donde sabemos, ver, claramente mostrado Hola. Ese correo electrónico que acabo de ingresar en su dándome la capacidad de cerrar la sesión para poder hacer clic en cerrar sesión luego me fui a intentar iniciar sesión con esas credenciales exactas. Andi, pídale a Google que vea si esas credenciales porque, ya sabes, la contraseña era un poco complicada de recordar. Por lo que les pido que lo guarden. Y ya ves, todas estas pantallas están registradas. Pantalla de esta pantalla de inicio de sesión. Todo apagado. Esos salieron de la caja con los conos de usuario individuales Motor de registro de identidad de usuario . Por lo que puedo simplemente hacer clic en cargando justo aquí en. ¿ Ves eso? Yo soy No camino derecho de vuelta a esa página principal donde estoy? No se ha registrado. Muy bien, entonces en el estudio o un, vamos a hacer un recorrido de todo este motor. Todo el tribunal que se hubiera generado. Si desea agregar más campos, ¿en qué necesitamos modificar? Nos meteremos en cómo podemos ir a personalizar esto a la nuestra. Es 13. Cambios de gestión de usuarios web: De acuerdo, Así que de vuelta al estudio visual, veremos, en primer lugar, nuestro enemigo controlador de cuentas. Podríamos sentarnos, diseccionar todo lo que está aquí. Pero lo que realmente quiero señalar es el hecho de que sí tiene acciones para la tala . Sí tiene, ah, get y opuesta acción donde valida. ¿ Quién es la persona que inicia sesión y antigüedades en acción? Es sólo un montón de afirmaciones si a las que se acostumbraban entonces se obtiene alguna otra cancha porque, recuerda, no todo se trata de verificar o validar contra una base de datos local, pero también nos da podría cerrar el registrarse al registrarse para una aplicación usando conos de redes sociales. Para este video, sin embargo, simplemente vamos a mirar el control del registro en el registro, usando nuestra antigua base de datos local y lo que necesitamos hacer para apoyar eso. Ahora pasemos sistemáticamente por toda esta cancha, de acuerdo, así que lo primero que hay que señalar es que en la carpeta Modelos habrías hecho algunos otros archivos, particularmente modelo de identidad, no CS contra los modelos. No nos veas en este archivo sería que el Isar inicial para todo el motor de identidad que es lo que los controles son motor de autenticación de usuarios En este momento, este motor de autenticación de usuarios realmente crea automáticamente una base de datos para ti, al menos si no tienes ya uno. Si ya tienes uno, entonces se necesita un poco de configuración para asegurarte de que vas a estar apuntando a la base de datos que querías apuntar en nuestro archivo de modelo. Modelos de identidad verán que tenemos dos clases. Usuario de aplicación en aplicación, db Contexto y aplicación. Db Context apunta a alguna cadena de conexión llamada Conexión predeterminada. Lo que pasa es que una vez que generes todo este corden y motor de identidad, en realidad generará una base de datos para ti en el primer lanzamiento. Muy bien, en esta base de datos se generará en base a las especificaciones configuradas en conexión predeterminada que podamos acudir a una solución. Explorer on Echa un vistazo al archivo de configuración Web That's Web config en el último aquí que está a nivel de proyecto. Aquí hay otra en la extremidad de vistas que no es la que vas a estar mirando. Entonces el último archivo de configuración Web que está en proyecto vamos a ir ambos del proyecto. Tendrá bajo la sección de cadenas de conexión en la línea 12. Puede muy, pero ves nuestra cadena de conexión aquí con el nombre predeterminado conexión. Y si echas un vistazo a lo que hay en el valor de cadena de conexión, ves, ya ves,tiene un valor de aspecto tranquilo, único ahí en lo que está haciendo es crear una base de datos que tenga el mismo nombre que tu proyecto. Andi. Utilizará eso como motor para sus funciones de identidad. Si echo un vistazo al servidor Explorer, veo que efectivamente de hecho tengo un conjunto de base de datos de conexión predeterminada y en la gestión escolar de corchete . Y ves que tiene todo fuera de esas mesas, ¿verdad? Tiene bastantes mesas. Andi. Apuesto unas mesas allí después. Pero no les importen esos. Deberías ver al menos estos. Pero eso no es necesariamente lo que se desea porque ya hemos estado trabajando en nuestra base de datos. Estamos en este punto porque estamos haciendo base de datos primero, NBC cinco desarrollos. Entonces, efectivamente, hecho, lo que se debe usar manguera del dedo del pie Nuestras tablas de identidad deben ser nuestra base de datos que hemos venido este incendio con el que se aloja en la dirección escolar en una plaza Devi entidades cadena de conexión. Y si miramos esta cadena de conexión, vemos que efectivamente es y de hecho, apuntando a la base de datos en nuestro BB local llamado gestión escolar Devi, esa es la base de datos que realmente queremos estar usando toe house todo de nuestro usuario o autenticación de usuario en sobre el diverso festín de usuario Hung Shin. De acuerdo, Entonces lo primero que quieres hacer es cambiar a donde esto apunta, y ya tengo esa línea fuera de cancha. Yo hice esto. Muy bien en. Te acompañaré a través de ella. Entonces solo comento esta línea en arma comentario esta línea en, te guiaré por los cambios que hice. Saqué todo después de fuente de datos encendido. Después lo sustituí por los valores que provienen de la fuente de datos aquí. Así que busqué en mi cadena de conexión entidades Onda desplazarse a través hasta que vi fuente de datos. Por lo que tenemos conexión. String es igual dedo del pie y luego tenemos fuente de datos on. Entonces me llevé todo aquí de db local Lo siento. Derecha hasta la última. No creo que lo necesites todo, pero sólo para darte algo de claridad. Entonces usé ese valor y lo pegué aquí en fuente de datos justo aquí. Por lo que al menos los dos están mirando al mismo punto. Y entonces probablemente vas a preguntar. Entonces, ¿por qué no simplemente cambiar la cadena de conexión que se está haciendo referencia dentro de nuestro modelo de identidad ? Ahora, el problema con hacer eso es que estamos usando entidad, marco e identidades no juega bien con este sabor off entity framework, por lo que en realidad te dará un error. Si intentas reemplazar la cadena de conexión que está usando el modelo de identidad, puedes probarla y ver el error por ti mismo. Y si has tenido algún éxito con él, eso iría en contra de lo que estoy viendo. Entonces déjame una línea y hazme saber cómo podemos tener una discusión al respecto. Pero lo mío es que solo mantuve la conexión predeterminada. Siempre podría renombrar sus botas. Tengo que asegurarme de que mucho es una cadena de conexión aquí en este archivo de conflicto en. Entonces cambié el valor en conexión String 2.2, mi ocho abismo. Ahora, habiéndolo hecho una vez que entre en modo de depuración, entonces una búsqueda de cualquier base de datos. Entonces en este caso, como no existía, realidad se creó esta base de datos en su momento. Entonces lo que hará si la base de datos es telefónica, que será en este caso es ir adelante y generar esas tablas. Entonces si miro hacia atrás en el explorador de servidores y miro todas las tablas que ves que sé tienen todo fuera esas tablas creadas aquí. Y si miro por dentro s siendo que los usuarios haciendo clic derecho y viendo los datos, veré que el usuario que acabo de crear está justo aquí. El i d se ve un poco de palabra porque probablemente estamos acostumbrados a esa auto implementación. Esto es lo que llamas una idea geo buena o muy única. Yo devaluo. Muy bien, tenemos el correo electrónico. Idris Onda. Tenemos unas cuantas caídas es. Pero mira esto. Mira la contraseña. Esto no es sólo un transeúnte, sino que tiene una contraseña Hash. Míralo. Échale un buen vistazo a eso. Siempre es buena práctica encriptar tu contraseña para que si alguien por algún golpe de suerte llegara a mirar tu base de datos y mirar el reporte de los usuarios. Por mucho que puedan ver la dirección de correo electrónico, nunca deberían poder distinguir en qué se encuentra esta contraseña. Si miras lo que aparece en esa punta de herramienta, ves que eso es un valor total de esta contraseña. Es completamente ininteligible para un ser humano. Está bien, vamos. Entonces tienen algunos otros por defecto Carlos, que van en ya ves, el nombre de usuario se establece automáticamente en cualquiera que sea la dirección de correo electrónico. Está bien, que eso obtenga por cada usuario que cree, se ve que también tienen soporte para reglas. No tengo ninguna regla. Ahora volvamos a nuestro usuario de aplicación modelo. Ahora el reto con este tribunal auto generado es que no necesariamente capta todos los datos que queremos capturar en base a nuestro contexto. Entonces, por ejemplo, estoy haciendo un sistema de gestión escolar. Si tuviera usuarios, definitivamente voy a necesitar más que correo electrónico, dirección y contraseña para mis usuarios. Probablemente voy a querer a fecha de nacimiento para mis alumnos y los de invierno en un vestido para mis profesores. Voy a querer información adicional. Muy bien, entonces necesitamos poder modificar nuestro contexto. ¿ Nuestro modelo que está gobernando cómo se ve un usuario del dedo del pie nuestra aplicación? No. Hay algunos cambios que deberán realizarse el 1er 1 es con la aplicación Usuario. Por lo que queremos seguir adelante y en la propiedad, fecha fuera nacimiento a esta clase para que pueda distraer la prop en estudio visual y presionado dos veces, y eso va a generar esa línea. Desearía que esa fecha de nacimiento fuera una fecha Tipo de datos de hora on. Yo quisiera que fuera fecha de nacimiento el. Entonces solo puedo usar esto, aclarar que usando sistema. Para que nuestro día recupere, hay que usar ciertas bibliotecas para obtener ciertos tipos de clase. Por lo que sabemos tener una nueva propiedad en nuestro usuario lo llamó fuera de nacimiento o cumpleaños. Es más bien así que es la modificación número uno bajo nuestro cinturón, ya sabes, para agregar tantas propiedades como necesites en, asegúrate de usar el tipo de datos correcto ya que ves la necesidad dedo del pie cuando estás almacenando los datos, porque sea cual sea el tipo de datos que vas a usar aquí y C Sharp se va a traducir a nuestro SQL para mayor almacenamiento. Así que sé muy, muy deliberado con tus tipos de datos. El siguiente paso es hacer lo que se llama una migración o un cambio a la base de datos. Ahora hemos pasado por hacer cambios en la base de datos. Vimos que solo necesitamos entrar en nuestro Explorador SQL traer de la tabla modificada el, luego actualizar nuestro E DMX. El problema aquí, sin embargo, es que si bien este CD una mezcla no se ha actualizado para reflejar las nuevas tablas sobre hacer el cambio así no necesariamente significa que la aplicación vaya a saber qué hacer. Ahora necesitamos ejecutar una migración y para ello, vamos a tener que ensuciarnos un poco las manos con nuestra consola, lo que significa que esta es una de esas cosas que tipo de clic y generan. Tienes que escribir un poco de corte aquí para hacer eso. Por lo que vamos a querer escribir alguna cotización, habilitar las migraciones y más adelante efecto las migraciones usando o consola de gestor de paquetes. Ya lo tengo aquí en doctor en mi barra de herramientas, pero entonces, si no lo tienes. Hay en cualquier lugar visible. Entonces siempre puedes ir a las herramientas on. Después ve a nuevo gestor de paquetes get y luego solo tienes que hacer clic en la consola de administrador de paquetes, y eso generará esta consola. Entonces me fui dedo del pie. Así que despejé mi consola cualquier error desordenado que estaba ahí encendido. Entonces veremos habilitar las migraciones primero en formal. Entonces vamos a escribir, habilitar dash my gray shin press enter y entonces realmente voy a reproducir ese error que acabamos de ver. Entonces esta flecha está diciendo que no podemos tener una migración que se haga en ambigüedad porque tengo más de un contexto el contexto. No sabe qué contexto o qué conexión de base de datos. Recuerda que teníamos que conectar cadenas como lo decía nuestro conflicto Web, pues eso era alrededor de una. Perdón, ¿sabes qué conflicto tuvimos? Contexto número uno, Contexto número dos O más bien, teníamos contexto número uno, contexto base de datos de aplicación así como contexto número dos para recordar que este es un contexto de base de datos en espera habilitar migraciones está diciendo No sé en cuál quieres usar este comando, así que tenemos que ser un poco más específicos, así que en realidad te instruyen en cuanto a qué decir. Dicen Use on dicen, para ambos. Por lo que se encontró más de un contexto para habilitarlo para el contexto db de la aplicación. Entonces necesitamos decir habilitar las migraciones para esto, que en eso y luego, si lo quieres para el contexto de entidades que necesitamos habilitarlo para eso que eso eso así lo querría en el contexto db de la aplicación, ya que ese es el que realmente y verdaderamente estamos identificando como nuestro contexto de datos de gestión de usuarios. Entonces voy a ver aquí habilitar las migraciones. Sólo puedo presionar para ver a la última mujer encendida. Entonces diré, dash context type name y acabo de presionar. Albany generó esa línea, y luego solo voy a copiar y desmontar estas partes para reducir el margen para el contexto de aplicación de error E B y esta prensa entrar y ver qué pasa. Está bien, entonces esa operación puede haber tardado un tiempo, pero luego veremos aquí que se ha completado y tenemos una nueva configuración de archivo que CS y también tenemos una pequeña advertencia aquí, diciendo que detectaron que pudo haber ocurrido otra migración, pero el resultado final es que la hemos habilitado para nuestro proyecto. De acuerdo, así que lo siguiente que queremos hacer es volver a registrarnos. Las migraciones sobre migración es más o menos como hacer un cambio en la base de datos. Se hace un cambio en la base de datos. En esta situación, sin embargo, estamos haciendo un cambio al modelo que está generando la base de datos. Abierto a este punto, hemos generado modelos basados en la base de datos. Estos modelos se generan con base en la base de datos. En esta situación, la base de datos se generó con base en el modelo de usuario de la aplicación, que está heredando del usuario identidad, que es de donde se generaron todas esas tablas y columnas predeterminadas. Por lo que en realidad modificamos el modelo base. Por lo que necesitamos informar a la base de datos que el modelo que debe emular no está actualizado. Este es un principio en la corte Primer desarrollo, estamos haciendo el primer desarrollo de base de datos, así llamado primer desarrollo. Así es como es. Los construyes modelo base en, luego se genera la base de datos en base a eso. Entonces en esta situación, necesitamos que nuestra base de datos sepa que hemos hecho un cambio o nos vamos de la migración de Adam . Por lo que voy a agregar una migración de guión en Voy a nombrarlo añadió Nacimiento hizo. Ese es el nombre de esta migración que estoy registrando. Entonces solo voy a presionar enter. Y entonces esto también se fue a hacer Ah, poco operativo encendido cuando esto se complete. Ves que habrías conseguido otro expediente. Y solo para echar un vistazo a dónde se están almacenando estos archivos, en realidad tienes una nueva carpeta llamada Migraciones. Y luego ves que todas esas migraciones rápidas están listadas ahí. Entonces cada vez que añades una migración, um, entonces ah, se genera archivo solo para mantener a camión alejado de los cambios que se están haciendo. Lo bueno de esto es que puedes retroceder a una migración específica en caso de que creas que puedes haber estropeado tu modelo de datos o has hecho un cambio que era indeseablemente puede simplemente revertir tu migración. Desharía los cambios a su base de datos. Por lo que esta metodología de primer código sí viene muy útil cuando estás lidiando con un proyecto muy dinámico on do. No necesariamente sabes cuál es tu base de datos hasta que estés desarrollando la función. Por lo que esto funciona bien con un enfoque más ágil, después tener la base de datos y construir alrededor de la base de datos. Dicho eso después de que tengamos este incendio, lo último que necesitamos hacer es actualizar realmente la actualización de los servicios de base de datos, escondar base de datos y luego presionar enter. Muy bien, Y luego nos sacamos un poco de escena de Burbage que podemos ver. ¿ Qué hizo Daschle Toby space dash verbals en eso nos mostraría todas las sentencias SQL se están aplicando a la base de datos objetivo lo que significa cualquier declaración que se debería haber usado para mí ese cambio y agregar esa columna. Pero el resultado final es que vimos o leemos la escritura, por lo que podemos suponer que no tenemos errores. Y entonces siempre podemos volver a nuestro explorador de servidores y refrescar nuestra mesa y ¡voila! Ahí es el cumpleaños. Se agregó a nuestra mesa para que puedas hacer esto con tantas otras columnas como te parezca conveniente. Sólo estoy usando el cumpleaños de hoy como un ejemplo rápido. Una vez más, simplemente agrega tu columna aquí o como propiedad más bien en. Después se ejecuta una migración. El grandioso es que ya habilitaste las migraciones, por lo que no necesitas volver a pasar por ese paso. Lo que pasa aquí después es que cada vez que haces un cambio, tienes que agregar una migración hasta que sea un nombre. En qué se hizo la migración. Entonces estás en el comando de actualización en eso mantendrá un seguimiento de todos tus cambios a medida que avanzas porque sabes que tu proyecto puede expandirlo. Mi contrato, Tus requisitos cambian en. Necesitas ser hermano dinámico con lo que estás almacenando como información de usuario. Entonces así es como vas a personalizar este modelo de identidad a lo que puedas necesitar para completar tu colmillo. No, estamos teniendo unos dos pasos más y luego podemos llamar a esto relativamente concluido. Los hechos que agregaste esto a la base de datos no cambian la vista. Entonces recuerda, aunque actualizamos el modelo, aún necesitamos modificar nuestra opinión para poder recolectar esta información y ahí unos pasos más que hay que ir para lograrlo. Entonces, primer lugar, necesitamos entender dónde se almacena lo que se almacena. Así que recuerda, todas las vistas se almacenan en una carpeta de vistas en una carpeta que corresponde con el controlador que está relacionado. Por lo que tenemos el controlador de cuenta para la autenticación de usuarios. Por lo que tenemos la carpeta de conos vistas para todas las vistas relacionadas con eso. Y entonces sí tenemos o registramos página ahora o registramos Página es lo que nos pidió el nombre de usuario , que, en otras palabras, sería el correo electrónico en la contraseña y luego lo En cuanto a confirmar contraseña. Como ves, hay alguna configuración, algún cable generado en la parte posterior en que nos da la comparación entre la contraseña y el pastor confirmado antes de que realmente acepte esos datos. Se puede intentar que falten muchas contraseñas y ver ese mensaje de validación que vuelve . Y recuerde que debe validarse, Señorita, Volverá arriba arriba aquí o el set off ellos volvería aquí. Entonces lo que queremos hacer es agregar fecha de nacimiento como campo. Por lo que ya tengo correo electrónico. Probablemente quisiera seleccionar o recoger la fecha de nacimiento justo después de los correos electrónicos. Yo puedo cambiarnos la fecha de nacimiento en fecha de nacimiento, pero entonces notarías que no hay fecha de nacimiento que viene en la inteligencia porque nuestra modelo no sabe nada de fecha de nacimiento, así que solo la voy a poner ahí, y vemos que tiene una línea roja porque nuestra modelo una vez más no sabe qué cumpleaños es. Si miramos cuál es el modelo, ya veremos. Otro continúa nuevo constructo que se está introduciendo, llamado modelo de vista. Entonces es realmente solo un modelo como cualquier otra clase que hayamos visto. Es solo que el modelo de vista, los principales modelos off view, es que tú, el desarrollador, en realidad puedes personalizar una clase que te ayude a agregar tu propia fecha, anotaciones y validaciones y así el. Y luego lo pasas a la base de datos, o mucho por llegar al modelo a voluntad. Tendría que hacer un tutorial completamente diferente sobre ese modelo de vista, punto de vista y perspectiva. Pero entonces vamos a cerveza a través de éste, y ojalá conectes los puntos. Si no, siempre se puede ver ese video. Por lo que necesitamos modificar nuestro modelo de vista para que la página sepa sobre fecha de nacimiento. Por lo que si solo controlamos y damos clic en la vista de registro, modelo será navegado a ella. Andi, realmente se está mangueando en un archivo llamado cono para ver modelos en Solution Explorer. Si entramos en modelos veremos que tenemos, Ah, Ah, modelos de vista coned, Muy bien. Y entonces si abrimos ese archivo veremos que tenemos bastantes modelos de vista de modelo en vez que ese tipo off tienen los mismos nombres que algunos fuera de las vistas que has visto en el controlador de conos A . Muy bien, digamos un modelo de vista de cable de verificación. Tienes vista verificar el cordón. Se ha olvidado de ver modelo. Si buscas en solución. Xperia ha olvidado las vistas de contraseña son tan leídas. Esencialmente, un modelo de vista es más de un tipo específico fuera de clase que creas y puedes configurar tus datos y notaciones que lo harán. Y ves que hay bastantes anotaciones de datos que con validación y lo que se muestra en eso te da un mayor control sobre cómo generas tu vista sobre lo que muestras en él vs la vista Viene el modelo que regresa de la base de datos donde tienes que trabajar con lo que obtienes tipo de vibra. Entonces esta es una forma mucho más flexible para ti es un poco más de trabajo, pero es una forma flexible para que administres tus puntos de vista. Entonces si miramos nuestro modelo de vista de registro veremos que esto es requerido. Es una dirección de correo electrónico. Muestra correos electrónicos. Todos sabemos por nuestro video anotaciones de datos que podemos cambiar lo que aquí se muestra. Está bien. Dirección de correo electrónico slash nombre de usuario ya que se están duplicando. Está bien, así que puedo ver incluso solo apellido de usuario. Y eso cambiaría esa pantalla encendida. Tenemos el correo electrónico de la propiedad. Entonces lo que necesito hacer para que este modelo de vista a fecha de nacimiento conocible es en ello aquí como propiedad, Así bajaré. Por lo que voy a hacer obligatoria la fecha de nacimiento. Entonces voy a ver que te requieres. Voy a especificar los tipos de datos. Por lo que tienes algunos por defecto como este. Eso es un atributo solo de correo electrónico. Pero este, voy a tener que usar mi tipo de datos. Creo que estos son tan tipo de datos de Denham y luego abrir y cerrar paréntesis y dentro de esos embarazos como los parámetros, yo era un tipo de datos punto fecha hora y ya ves, tienen bastantes algunos que vienen en la inteligencia. Por lo que tienes todos los que puedes usar si necesitas agregar ese tipo de dedo de validación lo que se sienta puntera duradera puesta. Por lo que el tipo de datos debe ser de tipo apagado. El tiempo en la pantalla será que está fuera de nacimiento encendido una vez más. Aquí es donde entra ese nombre para mostrar. Porque realmente estoy llamando a esta fecha de nacimiento. Entonces está apagado. Escríbalo. Tiempo en él es nacimiento beat andan una vez más después incluir la biblioteca para el día, que está usando sistema. Ahora, habiendo hecho eso, la aerolínea se irá porque no, nuestra modelo sabe en qué cumpleaños está. Entonces. El pedazo final de este rompecabezas es modificar sobre controlador de cuenta en nuestra opción de host de registro donde realmente está cargando nuestro modelo para enviarlo a la base de datos. Por lo que decimos lejano usuario es igual a nuevo usuario de aplicación, recuerda de dónde viene el usuario de la aplicación. Es la clase que acabamos de agregar Birthdate al usuario de aplicación cumpleaños it. Por lo que tenemos que ir actualiza este modelo de creación discreción off on object off application user to see user name email on. Entonces Isler lo agregó. Entonces eso sería lo que sería. Pero no queremos que sea un momento, pero no, sólo lo vamos a sumar y decir nacimiento. Es igual dedo del pie modelo de punto fechas de nacimiento. Entonces recuerda que quiere la opción de post. Una vez que obtenemos la vista y luego se presenta, le da vuelta su la acción post. La primera acción es entonces recibir en oferta de objeto. Molestar modelo llamado Model on En este registro vista modelo o modelo brazo objeto llamado Modelo estamos usando los datos correspondientes se siente Así Phil escribió estas propiedades, por lo que eso significa que fácilmente podría agregar otro campo aquí y llamar al nombre de usuario. Y luego, en lugar de usar la dirección de correo electrónico tanto para el nombre de usuario femenino como para el nombre de usuario, podemos decir modelo dot después de agregar en los libros de texto o sección de colección apropiados para el nombre de usuario. Entonces cualesquiera modificaciones que le vas a hacer a tu usuario de aplicación el modelo. También tienes que hacerlo a tu modelo de vista de registro, luego la vista de registro para tener la sincronicidad ahí encendida, luego finalmente o controlador de cuenta en todo apagado. Eso no se puede hacer sin hacer estos pasos de migración. Por lo que en realidad lo haré en las notas a la derecha los pasos para llenar o completar todas estas tareas. Paso a paso. Si sigues esos pasos, entonces no puedes dejar ninguna piedra sin girarla. Entonces para terminar esto, asegurémonos de que los cambios que hicimos nuestro reflejo en la funcionalidad por lo que una vez más hice un cambio de las anotaciones. Dije: Aunque la justicia sea un nombre, no quiero usarnos. hoy tenemos la misma dirección de correo electrónico o nombre de usuario. Si trato de inscribirme, entonces conseguiremos algo sobre la fecha de nacimiento. Siente que se requiere porque especie de esa anotación bit en las contraseñas no hacemos mucho, porque también se generó corte o políticos que gobiernan eso. Entonces todas esas cosas están en su lugar, la fecha de nacimiento, realmente y verdaderamente quieres usar un y un recolector aquí. No quieres dedo del pie tener fecha de nacimiento, solo ser un campo de texto libre tanto como una fecha hora, y no va a aceptar eso. Pero entonces los usuarios intentarán escribir la fecha de acuerdo a la retención. Creen que lo hice debería local. Algunas personas dicen meses de año ahí algunas personas dicen año los meses. Algunos dicen que los meses año esencialmente Citrus, Citrus, así que quieres usar un corte en la imagen y forzar el estándar desde aquí todo lo que puedas. Pero no voy a entrar en eso, Trent. No, voy justo a la derecha. Virgen María. Pujas un poco aleatorias. Andi, usaré una contraseña de prueba de contraseña en su donde no saben que puedes usar teatro. Las anotaciones en realidad gobiernan todo despojado. Estas contraseñas son creo que eso es mucho de extrañar. También, a métrica, eso es un desajuste. Por lo que atacando una postura y luego presionar registro. Por lo que en realidad es click registrarse y ver qué pasa en. Entonces nos da ese estándar sobre ese bastardo. Entonces déjame intentarlo otra vez. Prueba. Entonces la postura que es. Capital T capital, prueba P, Contraseña uno. Está bien, así que tenemos al menos un dígito encendido. Tenemos al menos una mayúscula. Te doy dos para que no debamos tener problema. No. Está bien. Y vemos que avanzamos más allá de ese punto de control en adelante. Si echamos un vistazo rápido en nuestra base de datos, solo te acercaré rápidamente o solución Explorer, profundizaré en nuestras tablas en nuestras bases de datos y luego tablas enteras, y miramos los datos en los usuarios de SB Net y ahí los tenemos. Tenemos al usuario que se creó antes, y obtuvo una fecha de nacimiento muy genérica porque ese campo de cumpleaños no puede ser no de lo que especificamos eso en nuestro diseño de base de datos. Entonces no se sabe. Y así conseguiste una fecha de nacimiento de la Virgen María el. Además, vemos aquí que el que acabamos de crear realmente consiguió el cumpleaños que pusimos. Muy bien, así que esas son cosas que puedes hacer para asegurarte de que estás capturando todos los campos requeridos de acuerdo a tu contexto y aplicación. Onda personaliza la velocidad en su motor de identidad de usuario. Muy bien, así que gracias por ver chicos. Espero que aprendas el dedo del pie bloqueado una vez más. Si no estabas seguro de algo, déjame una línea en los comentarios sobre me aseguraré de ponerte en contacto lo más rápido posible. Encendido en el siguiente video. Estaremos viendo cómo podemos ir tanto restringiendo el acceso a ciertas partes de para aplicación 14. Autorización de la gestión de usuarios web: chicos, bienvenidos de nuevo a este tutorial hoy. Estaremos viendo toda la semana y global restringiendo el acceso a ciertas partes fuera de nuestro sitio . No, abierto a este punto. Estoy seguro de que entiende que el controlador literalmente controla todos los controles citados de flujo de las cosas. Cualquier cosa que usted solicite ver, que estaban bajo lo que llamamos literalmente de ustedes va a ser buscado y más tarde renderizado por o controladores. Toda solicitud pasará por el controlador. Andi. Dejará los resultados. Lo que queremos mirar al es restringir lo que alguien puede nuestro no puede ver. Está bien, así que hoy estará usando este curso es controlador como nuestro conejillo de indias. Por lo que se encendió. Entonces disecaremos lo que podamos poner en control de remolque. ¿ Quién puede ver qué? No. El primero que quiero señalar es un nuevo dato sobre notación que has visto en el controlador de cuenta llamado autorizado. El autorizado significa que no puedes acceder a nada dentro de este controlador a menos que estés autorizado o por extensión, autenticado, autenticado, lo que significa que has iniciado sesión en la aplicación y estás identificado como un persona autorizada. En resumen, si quiero restringir todo al interior de mis cursos. Contralor. Significa que no se puede ver la lista. Por supuesto, es que no puedes ser el detalle de cualquier curso sobre el que puedas crear un curso. Se puede editar o hacer cualquiera fuera de estas operaciones. Además de cualquier otra cosa que pueda haber agregado al controlador, Entonces solo necesito justo encima de la declaración del controlador. Derecha Abrir corchetes en la palabra autorizada, y siempre se puede pasar el cursor sobre ella termina y ver que lo es. Precisa que un controlador nuestra acción está restringida dedo del pie solo las personas que cumplen con el requisito de autorización. Y en este caso hay que ser amado siendo para ser contado como autorizado. Entonces si hacemos esto y luego corremos en un intento de dedo del pie del Bro, cualquier cosa dentro del controlador para cursos, entonces deberíamos ser redirigidos al durazno maderero. Y lo intentaremos. No. En nuestro último video, sí probamos la función de registro e inicio de sesión en la que vimos que trabajan. Simplemente especificamos que los cursos deben requerir alguna cantidad de autorización antes de que otorgue acceso,lo acceso, que significa que este botón, que debería conducir a cursos, debería restringirme de proceder. Y pongamos eso a prueba. Entonces, por favor, aprende más, luego voila! No estoy obligado a iniciar sesión. Y luego si digo cargando usando esa información del usuario existente, entonces me redirigirán al discurso del índice de cursos. Puedo volver a casa por toda la duración que me encanta ser. Puedo hacer click, aprender más sobre el camino adelante sin ningún obstáculo. Está bien. Y entonces una vez que esté aquí, recuerda que el autorizado estaba sobre todo el controlador. Entonces una vez que esté autorizado, puedo conocerlo y borrarlo y ver detalles y hacer todas las cosas maravillosas que se me permitiría hacer como persona autorizada. Entiendo cerrar sesión, y luego seguiremos con nuestros experimentos. Y ves que haber iniciado sesión me movió automáticamente desde la página restringida de nuevo dedo del pie parece que realmente no le importa si accedo no son tan para o estudiantes controlador. También queremos autorizar porque no quieren que todos y nadie pueda simplemente entrar al sistema y ver sobre borrar y editar, etcétera. Pero entonces quiero levantar la restricción en la vista para el listado de estudiantes, por lo que todo es requiere autorización. Pero quiero esta acción en particular. A lo mejor algunos otros también. Pero en esta situación, esta en particular poder ser vistos sin contar con la debida autorización. Por lo que hay otros atributos llamados Hola Anónimo, que, si lees la punta de herramienta kindof overrides. El autorice atribuye autor como homenaje a su global. Es el overlord poderoso controlador tiene la respuesta a ello. Pero entonces en cualquier lugar que tenga un tipo bajo, anónimo dice: OK, haré una excepción para este. No tienes que estar autorizado para eso, Está bien, así que puedes agregar eso al índice. Deseo restringir la creación de un estudiante y la edición de un estudiante y la eliminación de un alumno por otro usuario registrado. Entonces los dejo solos encendidos. Entonces podemos ver si eso funciona. Está bien, así que no somos el amor sido, y luego queremos ir a ver a nuestros alumnos, así que voy a nuestros alumnos en. Entonces vemos bien, se carga, algunos todavía no lovin on. Yo soy capaz de bro todos los estudiantes. No obstante, cuando traté de crear nueva edición o pocos detalles y abrir todos estos en diferentes arriba, para que podamos ver los diferentes resultados. Ves esto, esto es crear su requiriendo que inicie sesión. Este está en ello. Me está requiriendo que inicie sesión. Y éste fue por detalles. Está requiriendo que me atraiga. Entonces ya ves, aunque autorizamos a todo el controlador, podemos Hola acceso anónimo tope vistas articulares que, ya sabes, si la persona no es amor estar bien, Por fin te deja ver el información. Pero para llegar más lejos, necesitamos que te autoricen. También puedes agregar esto autorizado aparte para matar nuestros puntos de vista. Si es un caso donde tienes el mando y lo quieres todo, Toby abrió a todos menos para una o dos música y justo a ese autor como atributos directamente dedo del pie esa acción en tu mando. Entonces en lugar de permitir el anonimato, usted autorizaría justo aquí arriba de esa acción, lo que luego restringiría esa accesibilidad de acciones. Entonces espero que ustedes chicos telefonean valor en este video. En el siguiente video hablaremos de restringirlo en base a reglas y modificar qué opciones están disponibles en la vista cuando la persona está autorizada en contraposición cuando no está autorizada o cuando es una regla particular versus cuando no lo están. Está bien, así que gracias por verlo y nos vemos la próxima vez. 15. Agrega roles y autorizaciones: Oigan, chicos. En nuestro último video, estábamos pasando por encender la autenticación de usuario en este video, estaremos buscando configurar reglas su busto mayor control. ¿ Quién puede acceder a blanco? No, hay algunas cosas que tenemos que hacer. Ya se habilitarían las reglas en virtud de que tenemos los conos de usuario individuales encendidos Ya configuramos la base de datos para la autenticación de usuarios. . Entonces solo necesitamos tener ah, unos cuantos ajustes más. Tendremos nuestras reglas, separación de bestia o rollo en tacto en nuestra aplicación. De acuerdo, entonces comenzaremos de viaje en nuestro Stipe de clase on Desde el último video, realidad operé a comunidad de estudio visual 2090 adicionales. Por lo que la interfaz puede mirar la diferencia a medida que voy por ahí, pero esencialmente, es más o menos lo mismo que 2017 que es en lo que iniciamos este curso Siris en. Por lo que empezamos con puesta en marcha en. Lo que quiero hacer en realidad es crear unas cuantas reglas para empezar. Entonces, en el contexto apagado, nuestro sistema de gestión escolar probablemente tendrá un admin un principio sobre Vamos a ver ah usuario, nuestro profesor. Por lo que queremos que al menos tres reglas comiencen. Entonces lo que voy a hacer es definir una función aquí en el inicio de clase que en realidad va a seguir adelante y crear esas reglas tan pronto como se inicie la aplicación, ya que para eso es para lo que estas clases aquí. Entonces solo voy adelante y trataré una función que te crea, Rose y usuarios sobre lo que voy a hacer aquí, primer lugar, es incluir mi aplicación contexto BD. ¿ Recuerdas que el contexto BB de aplicación se habría definido en nuestro modelo de identidad aquí mismo. Y representa esa conexión directa que llamamos la caída de conexión a nuestra base de datos que se está manguando sobre tablas bestia de usuario. Entonces aquí, conexión por defecto es el rey justo hacia la base de datos. Entonces lo que queremos hacer es inicializar un objeto fuera de eso aquí porque lo que queremos hacer es hacer algunas operaciones de datos abejas. Entonces necesitamos incluir nuestro contexto de aplicación bebe y me dieron una foto de contexto Z y luego ves que nos está haciendo necesitas incluir algo. Entonces un buen tiburón guardián. Es control y punto y nos va a mostrar lo que ha pasado. No se puede escribir eso y luego vemos en ti contextos de levy de aplicación. O tal vez eres ese tipo de desarrollador de bar. Dulce siempre solo vería un fuego aquí. Nuestro contexto profundo fue nuevo contexto Devi aplicación Siguiente queremos habilitar a los gerentes en la granja fuera del roll manager en el gestor de usuarios. Entonces solo voy a inicializar un objeto llamado Rolling Manager Onda Voy a ver esto es igual a nueva regla Manager y solo puedo ver control que lo que me va a prometer todavía tiene que ser instalado incluido Lo siento segundo solo percenter and go adelante Y quiero que esto tenga rollo de identidad Sólo vamos a requerir otra inclusión tan controlada que una vez más percenter. Entonces a medida que avanzas, solo puedes seguir adelante e incluir todas aquellas bibliotecas que necesitan instalarse en esto . Esto es solo una parte de la inicialización, así que solo puedes seguir adelante y escribir conmigo Regla de identidad frond tienda de reglas una vez más sobre todo esto dentro del contexto, fuera de contexto. Entonces esencialmente estamos inicializando un rol manager sobre estamos pasando en la regla de identidad en DWI. Se inicializaron y constructor pasado medio bro tienda sin entidad, rol en el punt, el valor off context aquí pasando la base de datos que este rol manager debería inicializarse dentro del contexto off Haré algo similar para ti eres usuario monitor Así que este duplicado que nueve y simplemente cambiar palabras suaves. Por lo que estos serán gestor de usuarios. Este no es usuario manager Soldado al menos tiene. Y esto supone que configurar esto sería usuario de aplicación y esto sería tienda de usuarios en una vez más, caso sobre usuario en contexto para mí es la escena. No, en realidad necesitamos ponerlo en acción. Entonces lo que estoy a punto de hacer es escribir en su declaración para decir que lo efímero ya existe. Si rodar, no existe, entonces creado en Dwell. Obviamente no lo crearía si ya existe. En realidad voy a crear un usuario admin inicialmente. Entonces si y voy a decir que no en droll manager me permite realmente dedo del pie encontrar o ejecutar ciertas operaciones específicas de rol para que pueda ver regla existe sobre disfunción en realidad va a entrar en la base de datos de reglas en el establo vial. Disculpa y comprueba si existe una regla con este nombre. Entonces aquí. Bueno, mi jugosa si hay un rol que existe con el nombre admin Muy bien. Pero en este caso, estoy tomando, si no es así quiero ver si no hay regla admin, Entonces haz esto. Y lo que quiero hacer es crear la primera regla. Entonces solo voy a inicializar algo fuera de regla de identidad de tipo. Y luego fui a darle a este rol objeto y nombre, por lo que la idea quedaría implícita una vez que entre en la base de datos. Pero le voy a dar el nombre del nombre que le voy a dar. ¿ Esa manera es aan den? Sólo voy a ver a un gerente de reglas seguir adelante y crea este rol. Por lo que Roll Manager una vez más tiene algunas operaciones específicas de rol que nos ayudan a reglas médicamente estables. Por lo que no tenemos que hacer mucho trabajo en conseguir que los datos entren y salgan del establo como con las tablas regulares . Una vez que es un usuario, nuestra tabla de reglas como se habría generado entonces tenemos ciertas operaciones que nos han dado sus diferentes más que nos ayudan a manipular estas tablas. Entonces sé que tengo el papel. En realidad estoy sólo fue a crear un usuario fuera del pero su hijo usuario. Y voy a hacer mi objeto inicializar a su hijo, que luego diría usuario nuevo. Por lo que podías haber hecho eso aquí. Pudo haber hecho los tirantes rizados aquí. Y entonces este edificio Namie fue admitido. Algunos sólo lo viven en ambos sentidos. si acaso, escucharte para ver afilado. ¿ Quieres ver cómo funciona Opie ahí? Cierto que lo pegamos alrededor de esto así que le daré rodilla a este usuario y solo darle significaría mantenerlo simple por parte del correo electrónico. Perdón dicho que sea quiero decir en mensaje y luego g gestión escolar para com. Muy bien, en ese entonces, Lo que no vamos a poder hacer es en realidad simplemente establecer la contraseña directamente aquí. Por lo menos no quiero porque me gustaría ver realmente bar Posser es igualdad, y sólo diré contraseña sólo para mantenerlo sencillo. Pero sí recordemos que nuestra base de datos en realidad va a o al menos nuestras funciones en realidad van del dedo del pie incorrecto. Esta contraseña antes de que realmente se almacene en la base de datos por lo que la contraseña es igual a esta simple palabra. Yo sólo estoy haciendo esto. En realidad puedo recordar, pero esta es práctica muy de hecho. Yo voy hacia adelante. Entonces voy a ver si nuestro Sí, señor, yo sólo estoy creando variables aquí es igual a. Y luego aquí es donde entra el administrador de usuarios porque todo lo que queremos realmente crear un usuario. Entonces llamamos a nuestro monitor de usuario, objeto, y luego vemos crea, pero sabemos que podemos, y luego lo estamos pasando. Y si miras la función sobre la Serie Lazio puede crear un usuario sin contraseña Todo bien. Acabas de pasar en el objeto fuera usuario de la aplicación, o en realidad puedes crear un pase o usuario con una contraseña sobre pasas en el objeto de usuario o aplicación,objeto aplicación, usuario y lo que sea que la contraseña esté en forma de cadena. Por lo que esta función realmente manejaría esa encriptación. Andi inserción en los datos abejas. Entonces déspota en sobre objeto de usuario así esos un o contraseña en, entonces, sólo en un breve cheque aquí para ver si nuestras creaciones, Así que cualquier vez que realmente crees, llevar a cabo en entidad, framework, acción o función. Por lo general, esta función devolverá algún valor. Por lo que el up so el objeto de usuario Aquí estamos nosotros son objeto aquí realmente tendrá un valor para que podamos vernos punto de hierro tuvo éxito. Está bien, por lo que devolverá un booleano si tuvo éxito, También devuelve cosas de lista. Flechas. Entonces supongo que si esto es caídas, entonces obtendrás al menos de errores. Si esto es cierto, entonces obviamente lo que sea. Intentaste trabajar. Entonces si esta operación fue exitosa, entonces podemos ver resultados lejanos es igual o usando manager una vez más en queremos agregar a regañar después de seguros y decidir experiencia usuario puntos I d. onda el rol que es de mí o déjame empezar desde arriba. Por lo que comprobamos. En primer lugar, si hay un rol llamado admin en nuestras tablas de reglas Todo bien. Por lo que Roll Manager es nuestro contrato de arrendamiento con nuestros viejos roba nuestro para cantar. ¿ Existe la regla? ¿ Sí o no? No. Si no lo hace lo que no lo haría en esta etapa. Entonces queremos Primer día crea un objeto de rol y luego llenarlo con los datos en. En este caso, quieres darle el nombre admin on. Entonces seguimos adelante y creamos el papel para que el rol tenga que existir. Entonces vamos adelante y crea en admin usuario on. Entonces le damos positivo a ese usuario administrador, y vemos que crea a este usuario con ese transeúnte. Entonces, no, tendríamos un anuncio. Onda Mineral. Tenemos un usuario llamado admin. Lo que no tenemos es una asociación entre nuestro usuario en el rol de Dover. Entonces ahí es donde entra esta línea, donde está. Si el usuario fue creado con éxito, correcto, y si recibió este incendio, entonces la regla se crearía con éxito. Si se crearon los roles creados en el usuario, entonces queremos ver si se creó con éxito. Entonces queremos toe add para gobernar a este usuario en esa regla. En otras palabras, no. Queremos crear una asociación entre este usuario I d. los ID de usuario? No, un científico. Este objeto porque una vez en dos amigos diferentes más, esta operación este objeto se actualiza básicamente con la idea proveniente de la base de datos en ¿Tenemos al Almirante? Por lo que esta función realmente manejará averiguar los dos id al asociarlos. No, creo que todo esto es muy importante para el administrador, porque los usuarios de Rodman son malditas, no suele tener uno muy pocos usuarios admin. No vas a seguir creando usuarios de Adnan, sin embargo, para el director o el supervisor y los profesores, no es tan grave. Entonces lo que podemos hacer es simplemente comprobar si esas reglas existen, es entender, para ver si nots rol en mi rollo de nudos naturaleza existe en este tiempo fue a buscar ese es nuevo maestro. Entonces si no hay regla docente, entonces eso entiende una copia esta cancha aquí en adelante, entonces voy al espacio que ahí y voy a cambiar el nombre del rol a maestro y ahí lo tenemos. Por lo que una vez más en la primera corrida como off escribiendo esta cancha, nada off Estas reglas existen. Por lo que esto se ejecutará en crear Admiral y usuario administrador. Esto correrá y creará una regla maestra sucedió. Yo sólo voy a poner uno más para un supervisor. Ella es muy similar a eso otra vez super por Sir Onda supervisor. Está bien. Y entiendo el cambio de control y ser para construir y justo entonces seguro que no tengo errores. Correcto. Entonces no tenemos errores. Sé que hemos creado todo esto. Lo que necesitamos hacer es realmente llamar a nuestra función en nuestra función de configuración, que se ejecuta tan pronto como se inicia la aplicación. entender llamar a esta función, puedo dejar de convencerlo ellos se sientan ahí en entonces podemos ejecutar y ver que nuestras reglas se crean. De acuerdo, entonces tenemos un error aquí. Um, si estuvieras cayendo hasta este punto en todos los vencedores, recuerda que modificamos sobre los objetos de usuario de la aplicación. Dedo del pie, en realidad, ¿ he vencido el nacimiento? Está bien. Entonces como resultado, cuando estamos creando este usuario y otra vez, empieza. Perdón. Es sólo decir que tenemos cuentas inválidas, cuentas, cuentas, resultados de tiempo. Entonces tenemos que arreglar eso. Por lo que sólo voy a detener la historia de rápidamente. Y entonces lo que tenemos que hacer es realmente agregar ocho fuera de nacimiento aquí. Cumpleaños igual y otro tiempo de ritmo de mar. No lo sé. Solar me disparan para hacer un frontal que está usando sistema, y luego podemos volver a intentarlo. OK, entonces vemos que nuestra aplicación surgió con éxito, pero no estoy del todo interesado en lo que está pasando aquí, pero rápidamente fuera del Strand. Logan, como el usuario administrador, que debería haber sido creado cuando esto se puso en marcha. De acuerdo, entonces no estamos del todo interesados en lo que hay en esta pantalla. No obstante, queremos revisar nuestra base de datos para ver que se crearon nuestras reglas. Servicio pedacitos de cuello uterino por haber detenido el estado de ánimo de la gente en el decirlo. Datos de tabla sobre. Queremos ver que se hayan creado nuestros tres años de edad. Andi así lo dijo hecho. Por lo que tenemos nuestros tres rollos admisibles por su profesor en el respetado yo ds on desafy goto s siendo su usuario de lo que deberíamos ver o usuario administrador. Está bien. No estoy viendo la agudeza, usuario. Voy a tener que comprobar eso. Oh, porque no estoy del todo seguro por qué, uh, podemos volver a eso. Entonces si el usuario administrador no se creó con éxito y eso significa que tampoco se hizo la asociación , cual se encontraría en roles de usuario, ¿ verdad? Entonces no hay asociación, Así que al menos tenemos o tres rollos tenían media maestra supervisor on. Tenemos al menos tenemos a los usuarios aquí. No, La cosa es que si quisiéramos asociarlos al menos dinero Willy, entonces solo necesitamos a nuestro usuario. Yo d telefono aquí en este seguir adelante. Sólo necesitamos nuestro papel. Yo D telefoneé en este problema y luego podríamos simplemente ponerlos uno al lado del otro aquí manualmente encendidos. Entonces tendríamos un usuario admin versus un profesor versus si eso si ese usuario me d aparece veces con dos reglas diferentes a las usadas ahí tiene esas reglas que se han asignado . Entonces eso es solo depurar. ¿ Qué pasó? ¿ Por qué nuestro usuario administrador que no fue creado? Andi, tengo una fuerte sospecha Eso tiene que ver con usar una contraseña de una semana. Pero voy a tratar un poco esta cancha. En realidad sólo voy a dar el dedo t este pedacito aquí en el día. Voy a ejecutarlo antes de las declaraciones if, sólo para que no pueda creer lo que está pasando. Es entender. Establece un punto debo aquí porque es ver a ti mismo crea del objeto con éxito en entender para seguir adelante y presionar correr en DSI ¿Qué pasa? Está bien, así que necesito puesta en marcha. Nosotros Fitzherbert apuntó por buscar u objeto de usuario. Vemos que tenemos aquí. Yo he estado en la idea ya está ahí en entonces puedo dar un paso a través usando x 11. Vamos línea por línea. Entonces tengo tu contraseña. Y luego golpeamos nuestra función aquí, que en realidad había creado a este usuario en este enyesado. Entonces después de presionar f 11 entonces se irá dedo del pie Si las declaraciones que luego verá la creación de usuarios fue exitosa. Ah, sí. Entonces si primero esfuerzo de nuevo, entonces debería entrar en la sentencia if on proceder asocia el usuario i d para ese usuario administrador con el rol i d. Así que no estoy del todo seguro por qué no funcionó mientras formaba parte de la declaración If. Muy bien, entonces nuestra aplicación está en marcha esta vez, pero sólo voy a parar porque realmente no me interesa la competencia. En este momento, voy a ir a mis datos en base a los usuarios en DSI. Si mis ojos me engañaron o no, Onda, allá vamos. Tan sobreutilizado ahí se ha creado con éxito, por lo que eso significa que debería poder iniciar sesión con este usuario admin encendido si buscamos en el usuario rose y solo necesitamos refrescar. Bueno, ya lo hice. Pero si no estás viendo industria enferma primero una consulta y ves que tienes esa asociación usuario yo d y roll idea. No estoy del todo seguro de por qué el cool no corrió mientras estaba en las declaraciones. Pero el hecho es que realmente no queremos que vuelva a correr. Es por ello que lo habríamos puesto dentro de esta afirmación para que solo ocurriera si no hay mineral ad . Entonces este tipo de supuesto, realidad podrías poner en una aplicación. Ya sabes, estás desplegando por primera vez en estos son presets. Pueden poner cualquier preset que desees que se conecte, crear una función presets creativos, y simplemente llamar a la función dentro de esta función de configuración. En el inicio de nosotros, sé que hemos creado con éxito alguna rosa y creado en estos usuario va. Y hay, o lo que queremos hacer es en esto es muy, muy, muy introductorio no s práctica en absoluto, pero por el mar off ejemplo, lo haré de esta manera. Lo que queremos hacer en realidad es modificar sobre proceso de registro para incluir reglas. Lo primero que quiero hacer es ir a mis modelos. Andi, modificar el modelo de identidad. Entonces lo primero que quiero hacer es ir a modelos y modificar mi cuenta de ti modelo on . Encuentra el impulso, señor Modelo el. Quiero agregar aquí propiedad toe acomodar reglas. Está bien, así que solo voy a crear otro campo requerido. Dado el año de disciplina roles de usuario sobre esto va a ser una cadena. No quiero llamarlo usuario o también apuntarías que en nuestra base de datos el correo electrónico sobre el nombre de usuario , obtendría lo mismo. En este caso, no tienen lo mismo. Pero por cada uno previamente creado, tienen el mismo valor. Entonces lo que voy a hacer es incluir nombre de usuario como propiedad al momento de registrarme en, asegurarnos de que nos sentemos usar cualquiera de por separado. Está bien, Así que sólo estoy ¿Entonces qué? Usuario nuevo y cambiar esta propiedad a usuario. A continuación, queremos inicializar nuestro cuadro combinado para la vista para la destrucción. Algunos este musical en mis conos. Controladora Onda, lo que va a estar pasando en este controlador es que quiero toe ejecutar una consulta contra mi tabla de reglas para ver todas las reglas en la tabla sobre presentarlas como opciones para la destrucción. Muy bien, así que lo primero que quiero hacer es realmente crear una propiedad para la aplicación. Él sea contexto. Recuerda, eso es en lo que estaremos arrendando con nuestra base de datos. Yo sólo lo voy a inicializar. Habiendo hecho eso, queremos asegurarnos de que cuando la persona de usuario para nuestro sitio era el registro en, renderizamos la vista realmente estaban renderizando una lista o cuadro combinado con todas sus opciones . Entonces yo soy la simple vista de tos Bug Dardos reglas bajo muchas maneras de hacer esto bajo sprinted, tiene una vista, pero en una llamada de un selecto esto en esto realmente iría de la mano más tarde cuando empecemos a ver cómo asociamos archivos y tener un todo han caído huesos. Pero en esta situación, una lista selecta. En primer lugar, se toma la fuente de datos, que sería contexto sobre reglas que nos darían a todas las reglas. Pero la mejor práctica nos haría crear los usuarios admin fuera de los nudos de caja, un usuario inferior para crear o registrarse y registrarse como y he estado. Entonces mientras estoy cuando no lo estoy haciendo como una mejor práctica. Al permitir que el usuario elija su rol, todavía podemos, ya sabes, explorar por qué ciertas cosas son solo idea también. Por lo que en esta situación modificaría mi fuente de datos sobre excluir los minerales del anuncio. Entonces pensé que en los adolescentes tenían minutos. Entonces se puede ver donde el nombre no está continuando en mí y entonces eso vería excluir Advil y entonces sólo podemos poner su lista hacer confianzas más fáciles ahí. Habríamos satisfecho al primer constructor donde se ve que están nueve de ellos y estamos a punto de emplear uno de los nueve. Eso no es esto con una lista selecta. En realidad se puede ver cuándo está seleccionado, qué valor desea. Por lo que quiero un nombre de valor, no el yo d. on también watch debe mostrarse en die. También desea que se muestre el nombre. Entonces si alguna vez trabajaste con un cuadro combinado en html, entonces sabrías que siempre especificas el valor en ti especificas el texto que se va a mostrar. Entonces esto es esencialmente nuestro hacerlo. Estamos viendo esta lista fuera de los objetos fuera de tipo regla on. Sabemos que cualquier variable o cualquier objeto más bien fuera de tipo Roisman tienen nombre e idea. Entonces estamos diciendo que queremos que el nombre sea el valor en Queremos que nombre sea el valor mostrado . También escribe nuestro haciendo todo eso antes de que regresemos la vista Ahora, en la vista sobre distrito como este y ver corte de ti Lo que queremos hacer es incluir otra sección de grupos de formulario para nuestro cuadro combinado recién creado entiende copia en paz que grupo formado on Esta sería una etiqueta cuatro y podemos cambiar eso de contraseñas confirmadas a rol de usuario. Pero cuando también tenemos uno para usar dentro justo a través de esto dos veces en que probablemente poner nombre de usuario por encima del correo electrónico. Está bien, Pero todavía gané en su momento, así que sigo nombre de usuario Onda. Veremos si ese valor Así que esto también sería un cuadro de texto para en contraposición toe passer para los libros de texto para nuestro uso. Está bien, y entonces igualmente no aquí. En realidad cambiaríamos esto a rol de usuario para la etiqueta, pero queremos que nuestro ayudante HTML para una lista desplegable. También lo es una lista desplegable. Después seleccionamos nuestra propiedad usando regla poner todo entre comillas Onda vemos que queremos usar una lista selecta en camino están usando reglas de colillas de ver bug. Por lo que estamos convirtiendo implícitamente cualquier valor dentro de ti pero subió en una lista selecta . Y recuerdan que Eso es lo que dijimos por aquí, ver sobre las reglas de punto es una nueva lista selecta. Por lo que este aumento la conversión no debe sentir considerando que ya pusimos en una lista selecta ahí en. Entonces sólo tenemos un metal previo vacío más en entonces que debería teca aquí fuera de nuestra destrucción Peach. Muy bien, así que hemos modificado el get o distribuido en el HTML real. No, necesitamos modificar lo que sucede cuando posamos. Entonces cuando un usuario realmente entra a ser registrado sus certezas ese asunto Nieto aquí En primer lugar, no necesitamos modificar nuestro uso de un objeto para saber que ya no está tomando correo electrónico. Pero ahora se está tomando el uso porque agregamos que en ese entonces lo siguiente que queremos hacer es poner en una función de cantar para decir este punto user manager docks agregan a regla. Por lo que realmente vamos a asociar a este usuario con el rol en que recordaríamos de la actividad anterior que lo que queremos es nuestra idea de usuario. Entonces, usuario dot i d onda nuestra regla por nombre, que obtendríamos a través de modelo que rol de usuario son así que tenemos un mejor de Eric aquí. Oh, lo siento. Estoy usando una espera aquí, así que lo que sea que esté usando tiene que ser un fregadero. Entonces se está basando en. Ahí vamos. Por lo que nuestros comer usan su manager on. Estamos pasando en el usuario i d porque el usuario habría sido creado a partir de esta función. Llama si fue exitoso, entonces iniciaríamos sesión automáticamente. Es decir, siempre se podría calle el secreto siempre mover este signo en función después de la creación y la asociación fuera del usuario con el rol. Y luego podrías reescribir a la página Andi. De igual manera, si después de render y error de lo que quisiéramos hacer es real o seleccionar lista porque cuando la página se recarga con las viudas de nuestra época en el cuadro kumble vacío para que el usuario tenga que sentarse y averiguar espera como get algo atrás. Por lo que queremos volver a cargar sobre ver bug Con esta selecta lista tal que fue devoluciones. Esta vista, es sabe exactamente lo que el municipal de vuelta en Ondo por lo que podemos probar esta Onda asegurarnos de que nuestra aplicación funcione bien. No, nuestra aplicación está arriba. Intentemos registrarnos en Brand User y ver qué experiencia su vida. Está bien, entonces no, vemos que lo hemos usado y hemos usado un papel con un desplegable ahí abajo. Cosas prever, Pudo x Podríamos estilo esto usaban bootstrap Para mí, parecía que me caía. Eso encaja con los demás. Pero sigamos adelante ahora mismo, en algún lugar para estatal maestro de pruebas o, digamos, un maestro uno en la guarnición de correo electrónico para ver. Dije, Ya sabes, hay slash usando en, así que necesitamos modificar o modelar. Entonces te metes en teca todas esas cosas usándolo. Está bien, así que en los pueblos debe ser maestro en la escuela vengan fecha de nacimiento sólo dejará esa contraseña. Usaré un simple pasarlo otra vez y luego usaré un rol. Te das cuenta de que esto está en blanco encima. Cuando te llevo, ve que en realidad tiene valores excluyendo admin basado en la consulta que escribimos para llenar este cuadro combinado. El motivo Hay un espacio de sangre, áreas que en nuestro frío sí teníamos unas velocidades en blanco en sobre cada TML en la forma de éste. Está bien, así que eso es lo que nos dieron un espacio ciego como el primero en amigo por defecto. Para que podamos volver atrás y completar o destrucción seleccionando un rodillo, anunció un maestro. Y luego pude registrarme y había alguna distancia. Recibir eso usando la combinación impostora para un maestro uno. Y si hago clic, manejo o hago clic en el nombre de usuario, ves que realmente tienes algunas funciones autogeneradas para el usuario aquí. No me meteré en eso hoy, pero definitivamente podemos decir que nuestro maestro ha sido creado sobre ellos. Tan solo quiero salir de la gente más real rápidamente. En saltamos a la base de datos y vemos regla de vigilancia. Este profesor ha sido asignado, así que si actualizo la tabla del usuario, entonces verás a profesor que viene. Por lo que tenemos el profesor en la escuela dot com con el correo electrónico y vemos que el auto para usar cualquier neblina viniendo a través en base a los cambios que hemos hecho sobre. Si voy al usuario sobre reglas y deberíamos ver un segundo papel aquí subiendo con los maestros Heidi y el papel del maestro, yo d. Y ahí vamos. Entonces tenemos a los maestros que d. Tenemos la regla docente I d. on. Eso es esencialmente cómo vas un barco creando reglas. Conoce lo último que quiero cubrir en este video es cómo puedes ir barco autorizando un controlador basado en la regla. Por lo que tuvimos este costo usando autorizado para decir que no puedes acceder a ciertas cosas en un controlador o en todo el controlador. Si no se te permite, entonces sé que lo que queremos hacer es ver si no eres amado bajo una regla de partículas, entonces se te restringe el acceso a estas cosas. Ahora veamos, por ejemplo, ya hemos admitido ya tenemos maestros maestros por lo general son los que deberían estar mirando a los alumnos y sus detalles. El admin podría ser el I t. Guy, por lo que admin podría no necesariamente ser capaz Teoh acceder a todo esto y que eso puede ser un lejano encaja en América incidente que los hombres de anuncios deberían poder hacer todo pero solo me humor por esto escenario on, Digamos sólo que cualquier cosa dentro del controlador de estudiantes sólo debe ser accesible a las personas que están en el papel docente. Entonces sobre los atributos de autorizar que ya está aquí en nuestro controlador de estudiantes, sólo voy a poner en paréntesis abiertos y cerrar. Entonces voy a ver roles. Y luego se ven los sentidos intensos viendo filas iguales. Y entonces lo que se espera es una fortaleza con las reglas que deberían poder acceder. Por lo que en realidad puedes tener múltiples reglas aquí contra un profesor. Hama. Es decir, coma, tantos como necesites, está bien, bien, en este caso, porque sólo tenemos a usuarios en cualquiera de los dos. Oh, sólo voy a demostrar con maestro versus admin. Entonces, repasemos por esto otra vez. Se autoriza a un maestro para acceder a todo lo que está dentro fuera de este controlador de estudiantes. Ya tenemos una carga anónima en índice, por lo que eso significa que una persona admin o no cosa larga debería estar con That's ESP index. No obstante, si alguien que no está en la regla del maestro amaba en nuestros otros intentos de ir a detalles o crear o cualquier otra cosa dentro de este controlador, Entonces debería fallar. Ahora pongamos a prueba eso. Sé que la aplicación está apagada. Me he dado cuenta de que hay un error donde si estás en modo de depuración y ya te gusta ser, entonces cuando intentes hacer esta operación, te pedirá que inicies sesión como si los atributos del autor ASP no funcionaran. Entonces para asegurarte de que saca el máximo provecho de esto te recomiendo que te ames on ¿ intentas volver a quererte? Por lo que me encantó e inicio sesión en destry algunos cambios que hicieron a la ley en presencia donde cambié el blogging de correo electrónico a nombre de usuario ya que normalmente pedimos a la gente que iniciara sesión con nombre de usuario y contraseña en la misma wien en la corte. En realidad actualicé inicio de sesión gerente. Por lo que esto está en una troller constante y este es un post log in front function. Cambio administrador de firmas que la firma de contraseñas deja de ser el nombre de usuario de puntos modelo. Por lo que he fechado el modelo de registro, tengo nombre de usuario en lugar de correo electrónico en la función de firma. En realidad toma el nombre de usuario Onda contraseña. Entonces porque estamos usando correo electrónico ya que usan un mope hasta que no, porque agregamos nombre de usuario como campo en nuestro proceso de registro, queremos asegurarnos de que estamos enviando con nombre de usuario y contraseña, lo que significa que los otros dos usuarios tendría que ser rebajado. Nombres de usuario duros que no son el email Chris y tú les dijiste esos son algunos cambios que han hecho para que puedas seguir adelante y cumplir con esos cambios. Pero como se relaciona también de nuevo en yo sólo amo y rápidamente como maestro. Y entonces demostraré que un profesor puede acudir a todos los alumnos, lo que permite anónimos pero también puede seguir adelante Ir a sus detalles, el plomo o crear. Y yo solo estoy en medio pinchando dedo del pie abrir estos arriba en ti pestañas para que pueda mostrarte que cada página señores, como esperaríamos ya que esta persona está en el auto para rodar. No, lo que voy a hacer es cerrar sesión como profesor y luego iniciar sesión como usuario administrador. Andi ahora se levantó a los estudiantes que me van a solas. Pero luego cuando haga clic en crear nuevo, me pedirá que inicie sesión porque mi regla de administración no es un acceso de dedo bajo esta edad en DSO en la que la persona es amada, pero se les está pidiendo dedo del pie Blufgan de nuevo porque no están autorizados. Entonces eso es esencialmente cómo puedes global, usando reglas para controlar el acceso a las diferentes partes fuera de tu aplicación sobre cómo vas navegando, instalando reglas y personalizándolas a tu propósito. Todo esto es extensible para diferentes personas tienen diferentes requisitos, pero esto está prácticamente fuera de la caja. Con un cool mínimo, puede aprovechar el sistema de monitoreo de reglas existente de Microsoft. Eso viendo en el mar unen estilo. 16. Añade proyecto a Github: Oigan, chicos , en este video, estaremos viendo cómo pueden ir a agregar sus proyectos, que serían en estudio visual para obtener ayuda con fines centrales de fuente. Ahora get top ha existido desde hace bastante tiempo, ya que al momento de esta grabación, hace frío por Microsoft. En él se encuentra una plataforma de desarrollo orientada a promover el código abierto. código abierto significa esencialmente que estás compartiendo tu código. Sabes que tienes un proyecto para trabajar hecho. Se quiere que otras personas lo tomen, tal vez agréguele. Sabes que eso es lo que promueve la guitarra en DSO. Al usar get up, en realidad puedes tener un lugar seguro para la corte de Siria o hospedar tu código. Por si acaso como tienes alguna dificultad técnica, tu máquina se baja o algo por el estilo. Sabes que está aquí en el código que solo puedes leer. No cargues todo tu último trabajo en continuar. También hace control de versiones, lo que significa que por cada cambio que realices, en realidad puedes facturar esa porción en. Si algo sale mal, puedes retroceder a la parte anterior realmente funcionando, por lo que es muy flexible. Es perfecto para un equipo cortejando a Andi. Incluso como individuo, puedes leer muchos beneficios de usarla hasta. Por lo que te llegan a decir yendo a levantarte dot com on. Entonces serás recibido con esta página de aterrizaje. Puedes optar por inscribirte si aún no tienes un continous Bastante fácil. Sólo el nombre de usuario en la dirección de correo electrónico y una contraseña en. Se puede ver que ya tengo una cuenta. Por lo que acabo de firmar en esto sería Michael. No, usualmente uso esto con fines académicos. Por lo que hoy queremos conseguir el proyecto de la dirección de nuestra escuela en el que hemos estado trabajando. Y aquí está. Queremos subirle esto al ghetto eso. Al momento de crear este proyecto, probablemente marcaste el control de fuente. Probablemente no lo hiciste de ninguna manera. Conforme has ido yendo, te habrías dado cuenta de que tengo candados y garrapatas rojas al lado de mis archivos. Esto está en implícito. Son inherentes mecanismo de control de fuente que nos da visual studio donde realmente podemos rastrear son las versiones aquí mismo en nuestra propia máquina local en visual studio nos está permitiendo ver lo que ha cambiado desde el momento en que se creó el archivo o desde que se creó el última versión del archivo. Correcto. Entonces, hasta que no, no hemos facturado nada. Todas nuestras garrapatas están ahí. Si amplío los controladores por ti, ver que hemos hecho cambios todos estos controladores. Entonces, ¿todos tienen tomas? No. Lo que queremos hacer es revisar en realidad todos los cambios que hemos realizado. La mejor práctica fuera de curso en realidad nos haría hacer cuentas más cortas de pollos en lugar de construir o toda la característica o toda una serie de características y luego facturar Quién querría probablemente pollo por característica para que si algo saliera mal, siempre puedes retroceder y tener una característica menos de la que tenías antes de que la cosa pasara , ¿ verdad? Entonces, no, les voy a mostrar dos escenarios. O estás en el escenario uno donde no hiciste clic en el control de servicio y luego tu producto se vería así. Entonces este es otro proyecto en el que tengo. Ya ves, No tiene tomas, no sabe candados. Y no. Aquí está en el proyecto. Es un control de fuente. Está bien, entonces si estás viendo este anuncio a control de fuente. Entonces sólo puede seguir adelante y hacer clic en eso. Deberías ver consigue. Si no ves get, probablemente significa que no instalaste. Obtienen función en estudio visual. Por lo que quieres volver a tu instalador de Visual Studio y asegurarte de seleccionar entrar en la lista de opciones que te dan, pero solo puedes seguir adelante y hacer clic en él. Eso crearía un repositorio local en su máquina que le permitiría hacer una versión. Control Andi seguimiento aquí mismo en tu máquina. Entonces esto se está procesando por un tiempo. En última instancia, lo que pretendemos es que una vez que lo hayas hecho con éxito, entonces deberías ver el cambio a algo como esto. Donde ves obtienen símbolo. Es el motor detrás del manojo fuente. También, hay un motor de control de fuentes llamado git en el Este es el motor detrás. Diga, consigue hub un bolsillo grande y bastantes otros. Aun cuando tu Dev Ops, antes conocido como TFS online incluso mientras tu desarrolla está empujando el motor gets Muy bien, una vez que lo agregaste con éxito como repositorio local de lo que deberías ver algo parecido en. ¿ Empiezas a ver esos candados y cerraduras y esos palos al lado de tus archivos? Te habrá pedido que te asegures de ver mientras los cambios antes de continuar. Entonces en el equipo Explorer. De lo que van a ver, tengo bastantes aquí. Entonces, ¿te refieres a nosotros arriba esta extensa lista del año local? Consigue sus positivos repositorios sección pie para mí. Tengo la opción desactivada. desarrolla un cero sobre. Levántate. Por lo que a cero desarrollado también es libre. Puedes apuntarte a esa es que necesitas un live a cones para salir adelante con este. Pero get top está abierto a todos sin importar si tienes un acuerdo en vivo o no. Entonces por eso estoy usando Gets hope andi. De cualquier manera, Microsoft posee ambos, por lo que se está volviendo más homogéneo a medida que avanzamos. Siempre podemos seguir adelante y decir conectar. Y si no estás viendo, se levanta Entonces una vez más, probablemente querrás revisar tu instalador de estudio visual encendido. Asegúrate de tener las herramientas de estudio visual para ghetto. Yo quiero mostrarles una manera agradable, fácil de empezar. puedes naufragar, haz clic en tu solución en. Entonces vamos dedo del pie comprometernos. Por lo que tengo algunos cambios que hay que comprometerse. Comprometerte significa que en realidad te vas del dedo del pie. Envía estos cambios a la fuente Bunch de tu estás haciendo un cheque. Tu chequeo en la corte literalmente. Correcto. Por lo que voy a presentar todos estos cambios a mi repositorio. Por lo que Irak haga clic en la solución en aconsejarle que lo haga que el nivel de solución para que todo lo que caiga debajo en el proyecto o proyectos se revisen cada vez. Por lo que solo tienes que hacer clic derecho para que vayas a comprometerte. Y entonces eso cambia el menú para preguntarte qué maestro de brunch es la rama predeterminada en. ¿ Tienes que ingresar un mensaje de commit? Conoce el propósito de un mensaje actual es hacerle saber a tu equipo o incluso a ti, porque tal vez lo miras hacia atrás. Me pregunto qué cambio la carne ALS aquí. Está bien, así que solo pones un comentario para ver o qué nuevas características se añadieron. Entonces déjame hacer eso rápido, ¿de acuerdo? Para que veas que mi comentario es tranquilo mucho tiempo en sus cosas que hice que no estoy captando aquí. Por eso dije en un principio que es una especie de mala práctica estar revisando en la corte después de un periodo muy prolongado. Por lo que quieres que tu comentario cuente toda la historia y también con el fin de contar toda la historia es mejor. Tienes cuentos cortos, después tienes una gran historia y luego tratas de capturarlo todo en una gran epístola. ¿ Verdad? Tenemos controladores añadidos. Desde el inicio del proyecto, hemos agregado el modelo de datos y agregamos la funcionalidad de autenticación de usuarios fuera peor. Con cada uno de estos cambios, lo que quisiéramos hacer se explica bien, esto es lo que se hizo. Este cambio. Esto siempre se hizo por ese cambio, ¿verdad? Entonces una vez más. Pero practica aquí. Pero yo nos estoy enseñando que vas solo. Por lo que aprendes para tu propio propósito a no hacerlo así. Y luego ya ves, calmarlo todo y te quedarías tentado al mojado lo. Pero una vez más, quiero mostrarles lo más simple que podemos seguir en esto. No la zanahoria y haga clic en cometer todo en el fregadero. Entonces, ¿qué fregadero sí sabría es preguntarte bien, compromete todo al repositorio local y quieres hundirlo con dónde, exactamente? Entonces Porque no tenemos un repositorio remoto, que sería uno de los como tu desarrolla nuestra guitarra son. De lo contrario nos está preguntando, ¿a dónde queremos hundirlo? Muy bien, Así que para facilitar el fregadero, lo que haremos es solo conectarnos para levantarnos para poder disquear adelante y conectarnos. Entonces esto nos pedirá que iniciemos sesión con tu nombre de usuario. Entonces la firma rápidamente y luego una vez que firmes con poco, veremos todos fuera de nuestros depositantes listados. De acuerdo, entonces después de conectarte para conseguir esperanza aquí en estudio visual, lo que quieres hacer es ir al hogar y hacer clic en hundirse. Entonces lo que te pediré es que te dará la opción de publicar para levantarte, digamos, en solo un editor, levántate y luego te daremos un menú de tiempo donde solo valida a Alozie para cambiar estos. Si lo deseas, puedes cambiar el nombre fuera del repositorio, como aparecería en levantarte llevado a, digamos, digamos, dirección escolar O r te levantas en una descripción afilada aquí. Entonces el proyecto así voy a tipo de una descripción rápida son por separado, y pongo descripción aquí creada para el curso U Demi. Aprende SP Bennett, NBC con Entity Framework Database First sí. Eso es, por supuesto, lo que este video se asocia entonces. Entonces esto sirve para el propósito de dejar que cualquiera que tropiece con la cancha tenga una idea de por qué se creó esto o para qué sirve. Puedes hasta tenerlo nosotros privado o público privado significa no. El mundo entero no podrá acceder. Ese público cored significa que bueno, todo el mundo puede acceder a eso llamado Si van, levantan, entonces se puede desenganchar publicar. Muy bien, Así que una vez que se complete esa acción, ve otro cambio. E realmente seguro que el enlace directo a su repositorio aquí en levantarse que vienen tan rápido que va a navegar su navegador a eso. También te dan la capacidad de manejar algunas cosas desde levantarte aquí mismo en visual studio. Por lo que realmente no tienes que ir mucho al sitio web después de solo crear tu contrato. Entonces si vuelvo, sin embargo, en refresco aquí Entonces vería que tengo el repositorio, como se prometió. Está bien. Entonces puedo ir a la dirección escolar el Entonces será que sepamos que se hicieron cuatro commits enteros porque lo que pasó fue que yo en mi computadora estaba haciendo commits a mi depositante local . Podría no haber sido así, así que verías probablemente un compromiso hecho. Pero todo fuera mío que se estaban haciendo localmente fueron empujados a levantarse. Por lo que levantarse tiene el mismo registro de cambios. Sepan que mi repositorio local, duro como iba a lo largo, yendo a lo largo usándolo sólo localmente. Entonces aquí se ve la cancha. Andi, si sigues este enlace, podrías ver la escuela. Um, en cualquier caso, ya sabes, usar el bit del gueto Alozie para compartirlo con facilitadores. Ah, ¿ están tus amigos en dshea aquí? Sea lo que sea que estés tratando de hacer si si estás intentando algo y sabes que no está funcionando ártico y solo mandar que se levante a nuestro alguien a revisar en su puerta, está mal aconsejado pollo del dedo del pie o se enfríe. Eso no funciona. Por lo que yo aconsejaría que si golpea. Levántate. Debe ser operativo. Significa que si vengo, tropezar con su y tratar de No cargarla. Siempre puedo o clonarlo en. Obtener los archivos fuente sincronizados con mi estudio visual Oregon. Simplemente no lo cargues en un zip o simplemente un dueño de zoológico puedo abrir en estudio visual. O simplemente no puedo saber el zip aquí como transeúnte y tener el proyecto como lo hubieras subido. Entonces eso es todo a lo que sacas tu cancha. Ponte de pie, Ponte de pie es muy cool es muy potente. Andi, espero que superes bastante bien este ejercicio. Si tienes alguna dificultad, siéntete libre de dejarme una línea en ellas, ¿sabes? 17. Comprender la gestión de los paquetes: Oigan, chicos, en este video, echaremos un vistazo rápido a la administración de paquetes. No, yo hubiera mencionado antes en tiempos anteriores, y estamos viendo lo que viene con el proyecto, pero que obtenemos todos estos archivos bootstrap y todos estos archivos de script Data Query y así sucesivamente. Yo hubiera mencionado que no necesariamente están siempre en las últimas versiones, cierto, porque, porque, como se construyen en él para conseguir persona 1.10 punto uno y uno a una ofensiva de Citrus por la manera más fácil o la forma en que tú probablemente pensar en ello de forma natural, dedo del pie poke leer estos archivos sería ir a y obtener los archivos físicos y volver y reemplazarlos aquí en el proyecto. En eso, eso estaría bien. Eso sería comprensible. Pero entonces visual studio kindof intenta facilitártelo dándote lo que llaman nuevo, consigue manejo de bolsillo. Entonces si haces clic derecho en tu proyecto o en tus referencias ek lik, entonces verías que tienen esta cosa llamada gestionar. Obtienes paquetes en. Cuando tomaste eso, se abre. Ah, bonito menú sexual donde está listando todos los paquetes instalados. Todas las posibles actualizaciones sobre también caer en Brose cosen ahí momentos en que lo que sale de la caja de estudio visual podría no ser adecuado para lo que quieres hacer en DSO. Tienen una comunidad de código abierto donde son personas bajas para aportar soluciones para que en realidad puedas crecer todas esas soluciones aquí mismo. Andi Condone botín en unidades. Puedes conseguir adoptantes para mis abejas amargas SQL. Andi, incluso bootstrap todo lo que puedas necesitar. Está en algún lugar aquí para que siempre se pueda una búsqueda. Si sabes exactamente en qué quieres, en realidad puedes simplemente hacer clic en él y ver más detalles. En cuanto a la versión, lo consideran exactamente a qué persona. Por lo que es una selección muy poderosa en una herramienta de administración de paquetes. Voy a repasar los opiáceos del dedo del pie porque podemos ver que tenemos 34 opiáceos pendientes. Entonces, como en el momento de esta grabación, NBC cinco estaba en especie de ser eliminada gradualmente, por lo que está un poco atrás. Pero ah, muchas de estas cosas fuera de la caja en su momento. Donde lo último No, no son los últimos. Por lo que nuevo get me está permitiendo decir, OK, puedo opiar y echemos un vistazo a Bootstrap advertí sobre actualizar Bootstrap porque si yo obedecía bootstrap justo aquí, estoy pasando de la versión 3.0 a la versión cuatro en ahí. Bastantes cambios en la cancha por bootstrap entre tres y cuatro. Entonces un gran salto como ese causaría que es después de las pruebas de regresión mucho fuera y los cambios y por todo el lugar, ¿ verdad? Por lo que para efectos de este curso, no voy a actualizar a la versión cuatro punto. Ah, está bien, pero entonces, medida que avanzas, vemos que Jake se preocupa con eso. ¿ Esa es la Versión uno? No es la versión 3.4 del otro Jake, o si las bibliotecas están bastante más adelante de lo que estamos en este momento, ve que las bibliotecas M V C. Por lo que no sólo es para archivos JavaScript y CSS, sino también ofertas, y los demás se listan bajo las secciones de referencias, todas estas cosas que le dan la funcionalidad real. Todas esas cosas se pueden actualizar usando nuevos gets. Entonces me voy a centrar en mí en los archivos de script porque a veces cuando se actualizan los concesionarios las cosas simplemente las cosas bonitas dejan de funcionar de problemas de compatibilidad y todo tipo de cosas. Entonces solo voy a mantenerlo simple en solo estoy en actualizar cualquier cosa que sea javascript. Entonces aquí sé que este es un archivo de script Java. Muy bien, Grasa Web. Está hecho para optimizar. Yo usaré eso. También, me llevaré a Newtown. Genio, hijo, tomaré modernizador. Te llevas al friki. Validación de desgaste en G Quartey. Andi, tenga en cuenta si van a actualizar cualquier archivo j Corey dot, por favor obedezca el archivo basado en consultas J Se han encontrado con problemas en el pasado con eso pensando que Oh, no necesito draper actualizado, pero las otras cosas que puedo opiar. Entonces esas cosas se pueden actualizar si voy a ser un bootstrap de lo que opiaría el archivo CSS en pero el script asociado a él. Pero una vez más, me voy a mudar de Andi. Dejaré todo lo demás. Como está fuera de curso se puede. Siempre puedes regla box si intentas actualizaciones de dedo del pie. Thes Microsoft puntos. La dependencia es calvares de versión a versión en algo ladrillos que siempre puedes inculcar. Nota sobre qué versión funcionó y luego solo puedes gobernar Boksic y desinstalar o puedes ver cuál es la versión que quieres en la seleccionada así? Y sí duerme un poco y te instalará esa versión específica. Por lo que quiero el último. Pero éste dice, Sólo ponte eso de nuevo entonces. Una vez que hayas terminado, ya sabes, recogiendo y eligiendo. Y el mismo procedimiento aplica el que te opones e intentas instalar. Simplemente seleccionas con la que quieras y cualquier cosa en la que hablar. Empezar esto sería con estilo, una órbita de soportes, alguien para seguir adelante y subir los thes. Entonces mi problema que hacer en este proceso para decir que Oh, ahí, está a punto de hacer estas apariciones en. ¿ Estás seguro de que deseas continuamente simplemente hacer click? OK, entonces aceptas cualquier acuerdo de licencia que te venga, arte y terminamos. Por lo que verías que te dieron unas garrapatas rojas más porque se tenían que hacer cambios, Um, en el nuevo get INGE inicialmente en que tenemos menos actualizaciones pendientes porque todo lo demás está ahí más tarde Así que sólo puedes cerrar esa ventana. ¿ Qué? Yo quiero señalarte también visible pero una vez más, garrapatas rojas aquí, Onda los paquetes. Ese archivo de conflicto es en realidad como rastrear todos los paquetes que están en nuestro proyecto. Si echamos un vistazo a la carpeta de scripts, vemos que tenemos algunos archivos nuevos. Entonces cuando obtenemos un nuevo archivo por nuestro motor de control de búsqueda, seguimiento de todos los cambios que obtenemos esto, además de la ciencia o conseguir sabe que este es un archivo nuevo. Nunca estuvo ahí en los medios neuróticos que estos fueron modificados, ¿ verdad? Por lo que se deshizo de los viejos archivos y trajo los nuevos expedientes. En el día, no robamos ningún opiáceos sobre script toe nuestros archivos CSS. Por lo que no hay cambios ahí, fuera de curso. Si bajara Bootstrap, entonces se verían signos pro ahí para los nuevos archivos. Está bien, así que una vez que todo esto se haga, sólo podemos seguir adelante y controlar turno y ser para hacer un proyecto de ley sobre la construcción fue exitoso. También voy a ir adelante y revisar en este lado de la cancha de la escuela y comprometerme así una vez más porque tenemos sus respuestas. ¿ Control? No, estamos rastreando cada cambio que hacemos. Entonces vamos a decir que bajó. Algunos archivos de script en nuevas versiones geek agregadas preocupan para que eso debería ser lo suficientemente descriptivo . Y entonces podemos estimar todo y hundirnos. Entonces una vez que hacemos eso, lo que hace es comprometer los cambios localmente en. Entonces simplemente los empuja a conseguir un trabajo automáticamente para que no tengamos que involucrarnos con el segundo paso. Una vez que te comprometes todo y te hundas, Ahí vamos Sincronizado con éxito Andi una vez más si solo echamos un vistazo al gueto pero solo nos refrescamos. Entonces veremos dónde está. Si los cometas están bien al hacer clic en commits, podemos ver todos los cambios cuando se hicieron. ¿ Andi qué? El intel. Muy bien, así que ahí es donde tus comentarios son muy prácticos. Y luego si quieres esa versión específica, solo puede hacer clic en ella. Te mostrará lo que se hizo. Sólo pueden congelar los archivos para sacar esa versión específica de los archivos. Entonces si algo se rompe que solo podemos retroceder el dedo del pie antes de hacer esos que obtienes actualizaciones 18. Añade módulos de gestión de la presentación y la inscripción: Oigan, chicos. Entonces nos hemos ido de pie. Todo un hito con nuestro proyecto. Y no, queremos empezar realmente asignando cursos a los estudiantes. Andi moviéndose junto con realmente tener un sistema de gestión escolar. No. Una cosa que no hicimos antes no es en una mesa sobre la estructura de requisitos. Apoyar la adición de conferenciantes al curso es porque tenemos cursos. Tenemos alumnos y tenemos inscripciones. Las inscripciones serían un estudiante siendo asignado para hacer, por supuesto, en grado que obtendrían. Pero lo que no tenemos es tener al conferenciante que estaría impartiendo el curso. No tenemos facilidad para manejar eso en nuestra aplicación tal como está. Por lo que este video está orientado a simplemente agregar ese nuevo módulo y a medida que avanzas con tu desarrollo, sobre todo si lo estás haciendo de manera ágil, conforme surge la necesidad, conforme surge la necesidad posible que necesites modificar tu aplicación para que quepa las necesidades. Entonces ese es el escenario que hoy queremos destacar. Por lo que empezamos agregando el conferencista, tabla, toe o base de datos apagado, o así tengo mi conexión predeterminada o gestión escolar por lo que usan un explorador de servidores o usan el Explorador de Objetos SQL. Deberías tener el mismo efecto alguien para usar mi SQL server Object Explorer y voy a agregar una nueva tabla a mi gestión escolar Devi on Esto será para conferenciantes. Por lo que agregué nombre y apellido a este día para ser un establo, fuera de curso. Sea lo que sea que quieras empezar sobre electoral, solo quieres poner en el establo. A lo mejor para tu sistema de gestión escolar. Se quiere construir un perfil completo para los sectores aquí en una foto de perfil, tal vez su especialidad agua es. Pero para que el estado se vaya moviendo, sólo voy a dejarlo tal como está. El nombre de pila apellido. Eso es todo lo que necesitamos para cualquier conferencia dada. Al menos ahora mismo, también tenemos que asegurarnos de que nuestra columna I D sea auto incremental. Entonces para estos, puedo distraer el cuidado de Lee y simplemente incluir esa identidad en la orientación. El incremento de la columna y yo sólo pensaría identidad para asegurarme de que su identidad y asegurarme de que esté contando por uno cada vez en una vez que se hayan hecho todos esos cambios y ustedes verían reflejando aquí en los tribunales o en el euro, el frío ya de esa manera. Eso está bien en. Entonces puedes actualizar este establo en ese exitoso No. Otro cambio que quiero para mí es al establo de matrícula porque sobre la inscripción, esencialmente es asignar un conferenciante a una clase con un alumno en lo pactado que conferencia habría dado a ese alumno para esa clase. Entonces esa es toda su mesa de inscripción o está configurada. Por lo que queremos asegurarnos de que modifiquemos nuestra matrícula, capaces de estar conscientes de que debe tener otra clave extranjera en la forma off conferencia I. D. Soto. Añada las restricciones de clave externa al establo de matrícula. Simplemente voy a tomar el camino Círculo y copiar y pegar uno fuera del país que ya está ahí y acaba de cambiar la información de acuerdo a mis necesidades. Entonces fui a ver a conferencista, así que d. Y luego cambiamos los conferenciantes del dedo de la mesa en la columna I D. Teoh i D. Y cometí un error ahí, así que este sería yo D. Ya que esa es la columna clave primaria por aquí para que sepamos que es letra que sí. Tienes que llamarlo conferencia idea cualquiera, y es claramente declaraciones de cualquier problema. Y estoy recibiendo un error aquí porque no tengo coma. Entonces el coma encendido entonces todo ese aire debería desaparecer. Entonces eso es agregar la restricción. Lo que necesito hacer es en el rol para la columna. Más bien conferencia I d. mi búsquedas entero porque es una clave extranjera. Andi, voy a no estar sola. No, porque no tiene sentido. Horno de matrícula con un curso y estudiante y sin conferenciante, ¿ verdad? O en realidad puedo dejar esto. No, porque podrías tener a los alumnos y rodando al curso. Y aún no sabemos quién va a maestro, así que sepan que todo está bien. Tengo la conferencia i d columna y restricción inaceptable para ver que debería aplicarse a la letra I d columna y hacer referencia a la columna ID en conferencias sobre. Entonces todo eso está en su lugar, así que solo hago clic en él. Eso debería actualizar nuestras tablas de base de datos. Ahora bien, recordemos que estamos haciendo primer desarrollo de base de datos, lo que significa que una vez que los cambios en la base de datos, hay que actualizar nuestro modelo, por lo que tenemos que encontrar o en diferente donde modelo, que simplemente doble clic aquí y obtener este diagrama en. Entonces tenemos algunos de nosotros que esperamos bien, esperamos que la tabla en romana se actualice con una nueva columna sobre que se sumará una nueva tabla a este modelo relacionado con la matrícula. Por lo que voy a dar click derecho en el espacio vacío en Click Actualizar modelo de base de datos, que luego traería este estilo de caja. Puedo perforar en él y seleccionar específicamente las tablas. Desearía dedo del pie agregar. El motivo para hacer esto sería que no quiero agregar el historial de migración. Si estás haciendo cuervo con reglas y usuarios, entonces encuentra que puedes hacer eso. Pero no voy a estar haciendo ninguna de esas cosas en las que sólo me interesa un profesor estable, y luego hago clic en terminar. Una vez que eso se hace, hace un re completo primero refresca la tabla de inscripciones y anuncios en la columna faltante en ella también agrega en mi mesa de conferencista y muestra la relación entre ellos también nota porque permití No, La notación aquí es diferente a la notación aquí. Sé que tengo mi mesa Electra en ello. El siguiente paso es hacer disponibles las operaciones de multitudes, así que sólo voy a ir a controladores. Haga clic, agregue un nuevo controlador y luego voy a continuar con el controlador NBC five con Entity Framework. Voy a precisar que quiero que este controlador se base en la mesa de conferenciantes, que no aparece en la lista. Y si te encuentras con este problema, es porque no construimos. Entonces cada vez que le haces un cambio a la madre y creo que dije eso antes, siempre has sido algo control turno y ser y solo haces una compilación rápida después de una construcción exitosa, podemos volver a intentar la operación. Por lo que grabamos controladores goto anuncio nuevo controlador, continuar con el en diferente controlador basado en trabajo Encontrar sobre modelo así que en realidad sólo puedo escribir elegido jurado en. Ahí vamos. Por lo que nuestro modelo no está disponible el. Podemos dejar todo lo demás, como está encendido. Simplemente vamos adelante y pensamos una vez que esa operación esté completa, aterrizaremos en este controlador con todo ya cableado y ya hemos pasado por todo poderoso. Esto es que obtenemos nuestro listado de todos los conferenciantes, el detalle por conferencia, que sería como esta página de perfil que llegamos a crear en cualquier momento diario. Entonces sabemos que nuestras operaciones de multitud para cualquier dado que estás terminado, Lo que quieres hacer es probablemente en unas cartas de prueba para que podamos continuar con las inscripciones. Onda. Adicionalmente, solo voy a ajustar mi página de diseño para asegurarme de que pueda llegar fácilmente a mi conferencista habla. Yo sólo voy a añadir otro tendido aquí, control, Ver envidia. Y esto será para un conferenciante para que cuando no pudiéramos ese enlace, estemos en esa multitud lasciva Operación Espacio. Está bien, así que sólo he estado tan rápido corriendo y mostrarte cómo se ve eso, pesar de que debería ser muy familiar. Está bien, así que aquí está nuestra página, y vemos que nuestro enlace de conferenciantes no es agregado y debilita a los hermanos. Y agregué algunos lujuriosos aquí Jack Daniels, Johnnie Walker y Re sobrino. Entonces eso es todo por agregar el modelo de gestión conferencista it o aplicación on. Por supuesto, el último acto para este video es el cheque en este código, que podamos asegurarnos de que retomemos donde lo dejamos. En caso de que algo vaya por ahí entender, para escribir un mensaje rápido en. Entonces solo nos comprometemos todo y cantamos Jean, cometiendo nuestros cambios localmente. Andi en el infierno del gueto por sobre la gestión de la inscripción. Vamos a repetir muchos de los pasos que acabamos de pasar con nuestra porción de conferenciantes. Pero entonces muchos más ajustes voy a ser yo. Es para que podamos tener, ah, ah, agradable aplicación dinámica y fácil de usar al final de la misma, alguien para empezar con agregar un nuevo controlador al dejarlo con marco de entidad. En este momento, lo vamos a hacer por nuestro modelo de inscripciones. Por lo que pasamos y lo hicimos por todo menos inscripciones. Entonces creamos que agregamos Todo bien, Así que para nuestras inscripciones controlamos que solo vamos a tomar a veces apreciar lo que está pasando aquí porque esta mesa va a ser un poco más única que todas las demás tablas que agregamos controladores para adelante por eso, son unos cuantos más teléfono dice que van a estar aquí que probablemente no viste antes. No, Entonces, primer lugar, para nuestra página de índice. Ya ven aquí que obtenemos una consulta ligeramente diferente y voy a traer arriba o los conferenciantes nos controlaron para que podamos comparar para el controlador eléctrico. Todo lo que tenemos que hacer es conseguir a todos los conferenciantes o un DVD dot La naturaleza es la lista a, y acabamos de devolver eso. No obstante, notan que tenemos dos líneas en inscripciones y estamos declarando una variable llamada Inscripciones, que está ejecutando un Corey similar sacando la DB del contexto, obteniendo las inscripciones. Pero entonces estamos haciendo algo llamado Incluir en lo que incluyen Does Is Inicia lo que llamamos carga ansiosa, que incluye literalmente cualquier entidad relacionada con esta tabla. Entonces, en otras palabras, si miramos hacia atrás a nuestro modelo muy rápido, veremos que tenemos tres relaciones tardías en la inscripción del dedo del pie, que sólo voy a arrastrarlo por la pantalla para que podamos verlo de manera diferente. Muy bien, entonces cuando traigo diagrama de interés, se ve que los leones siguen inscripciones. Eso se debe a que el conferenciante está asociado con inscripciones los alumnos no se asocian con los romanos en el curso es un asociado con la matrícula, lo que significa que si miramos en la matrícula deberíamos estar viendo datos para el conferenciante. El poros en los alumnos en DSO cuando se está generando el controlador está buscando en cuenta todas estas relaciones en él es escribir la cantera que ve que debes incluir datos para el curso relacionado. Deberás incluir datos para los alumnos relacionados, y también debes incluir datos para el conferenciante relacionado. Por lo que cada renglón fuera de matrícula va del dedo. Contar con datos asociados al curso, el alumno sobre el conferencista. Entonces cuando cargamos índice, podemos ver eso un poco más en. Entonces si miramos crea, entonces veremos que está creando alguna variable genérica, que está en forma de lo que llamamos un bug de vista en. Habrías visto ver bolsa por un poco en una conferencia anterior, pero view bag es solo algo que se crea sobre la marcha sobre lo que le estamos asignando es una lista desplegable que C sharp o SP dotnet NBC causan una lista selecta sobre lo estamos cargando con la lista de cursos en. Estamos asociando esta lista selecta. El I D o el valor debe ser el I D fuera del curso sobre lo que se va a mostrar sería el título. Muy bien, ahora estamos haciendo esto tres veces. Estamos haciendo esto por curso I d para estudiantes en para conferencias. Por lo que para cada relación, probablemente queramos tener una lista desplegable que nos permita seleccionar el valor que queremos crear esa relación con Andi. medida que avancemos, veremos que todo lo que hace es tomar todos esos valores yo d para crear un registro de inscripción . Lo mismo sería para los editores. Ya sabes que cualquier cosa crea compartir mucho de la cancha Onda. En cualquier caso, si eliminas las inscripciones, entonces solo eliminas la matrícula para que los leads no se vean muy diferentes. Por lo que solo podemos seguir adelante y hacer click, Empezar y ver cómo se ve nuestro modelo de inscripciones. Antes de hacer eso fuera de curso, quieres agregar un enlace a nuestro diseño pagado para que podamos llegar a él fácilmente, va a subirse rápidamente a compartido en Leo's y entiende una vez más duplicar esta línea de la misma manera. Y yo sólo voy a tomar todas las páginas no estaban usando así que no estoy usando un barco y contactos entienden para quitar los del menú. Por lo que tenemos más espacio para páginas que realmente importan. Está bien, entonces, no, sólo puedo seguir navegando. Revisaremos cómo se ve y el romance. Entonces cuando se cargue nuestra página, solo podemos hacer click en las inscripciones y veremos la lista que hay hasta ahora. Andi, los había agregado directamente a la base de datos, así que entré y dije, Estudiante uno está asignado al curso uno, etcétera, etcétera. Entonces por eso verías esas cosas aquí. A Z puede ver la mesa tomaría algunas modificaciones porque, bueno, genial no hay título, ¿verdad? El apellido fuera de los estudiantes solos está ahí en nombre de pila ¿existe? Pero eso no es necesariamente sostener. Queremos que nuestras etiquetas se vean. Esos no son necesariamente los datos que queremos presentar aquí. Si miramos crea, vemos que obtenemos nuestros tres cuadros desplegables por lo que llegamos o genial aquí, que era texto que obtenemos curso I d, que nos da esa lista desplegable que obtenemos. El problema es para los estudiantes en. Obtenemos una lista desplegable por sólo los apellidos de nuestro conferencista. Entonces vemos que tenemos que hacer un poco fuera de la modificación. A lo que pretendemos realmente es reingeniar el dedo este discurso. Entonces cuando regresemos veremos cómo podemos ir barcos modificando todas estas cosas. 19. Instalar las bibliotecas de JQueryUI Javascript: Oigan, chicos , en este video, vamos a ver instalar Ajay Kori, ustedes yo biblioteca en nuestro proyecto. Ahora, habríamos mirado a Newgate y el manejo de paquetes en un video anterior en DSO. En este video, realidad vamos a estar mirando cómo podemos seguir usando a Jake. ¿ Eres yo en nuestra aplicación, ya que estaremos usando la función auto complete, que significa que los libros de texto, cuando empecemos a escribir, también se completará con todos los partidos posibles, ya sabes, similar a la búsqueda de Google. Está bien. Entonces, primer lugar, echaremos un vistazo a Jake, o usted es documentación. La documentación está fácilmente disponible en su página web. Puedes ir a Jake donde estás dot com orden simplemente google. Jake, donde tú y en desde esta página web, verás que te dan un montón de descuento. Widgets y herramientas, como dijimos, se usarán en el auto completo para el resto fuera de esta actividad que sí ofrecen No conoces enlaces en enlaces sirios sembrando, significa que lo hospedan y solo incluyes ese enlace en tu núcleo en eso se hará cargo la referenciación para ti. Además de todo eso, lo que se requiere totalmente para usar a Jake, ¿verdad? Yo soy Jake son en sí tan Jake, o es un framer que está construido encima de JavaScript en es casi un buey medio, un básico en desarrollos mundiales en estos días en Jake, donde nos sabias construyendo sobre el doble ese marco y dándonos, um, widget. Por lo que al principio de la conferencia, habría hablado de agregar, como un recolector de fechas al cuadro de texto donde se requiere de día. Bueno, Jake, donde tienes un recolector de fechas y solo podemos echar un vistazo rápido a todo El recolector de fechas se ve en cómo funciona. Entonces nos dan una página de muestra aquí, y luego limpiamos los libros de texto y vemos que aparece el recolector de fechas y nos permite seleccionar el bit ahí sin tener que escribir ponible. Y yo estoy aquí atacando y desactiva las entradas. Entonces esa es una de las ventajas de usar, como un widget de selección de fecha en su lugar, off permitiendo al usuario escribir la fecha por sí mismo el. Entonces también te muestran el código fuente que se requiere. Te dan una idea de qué hoja de estilo tiene un requerido, así como los archivos de script de reloj necesitan ser incluidos en. Tenga en cuenta que tiene Jake preocupación al estar incluido así como una consulta. ¿ Por qué en estos sería un ejemplo? El valor SRC sería un ejemplo de lo que es un CD en. Ya sabes, es sólo un dedo del pie de enlace. El archivo que se aloja en algún lugar de Internet para que no tengas que tener el fisico lejos . Me di cuenta. Además, esa orden murmura, tienes que asegurarte de que incluyas a Jake o antes incluyes a Jake o a ti I De lo contrario, te encontraras con algunos problemas de referencia en, después tenerlo referenciando ambos archivos que el función JavaScript real o función de consulta J que se emplea para realmente llamar al recolector de fecha es la llanta. Obtener los elementos del recolector de fecha, que es la entrada. Entonces tenemos un pitak, Claro, Claro, y luego tenemos una entrada interruptores de táctica. Pero la idea es recolector de fechas. Entonces vemos aquí que Juncker está usando el mismo tipo de identificar un hashtag CSS para idea en un punto para una clase por lo que hashtag seleccionador debate objetivo que los elementos y llamar a la función del seleccionador de fecha en. Eso es realmente lo que implica la desconexión del calendario la forma en que consigue su estilo es mediante la inclusión del archivo de tema base para la preocupación de Jake ¿Y bien? O tal vez querrías incluir el específicamente para el recolector de fechas que sé que lo hacen también, cualquier hoyo estamos mirando la función auto completa que, si lo miras en acción, dado una lista o banco de datos fuera de todos estos valores, deberías poder empezar a escribir y luego te hará sugerencias ¿Ves eso? Entonces si tipo t va a buscar todo con una T y me devuelva lo que posiblemente quiera y eso es todo lo que vamos dedo hola. El que esté agregando a los estudiantes dos cursos para realmente buscar nombres de los estudiantes los arrojan, agréguelos a la clase de una manera agradable, divertida, dinámica e interactiva. Ahora, vuelta en visual studio, necesitamos incluir los archivos Jake o EU I en nuestro proyecto. Ahora, una vez más, instinto probablemente te hará ir a la página de diseño y solo incluirlos aquí, lo cual estaría bien. En realidad podrías simplemente copiar ese frío con el cdn. Enlaces en solo incluirlos aquí en tu pequeña página y luego te vas. Pero queremos destacar la gestión de paquetes completos nos ayuda a mantenernos al tanto de lo que está sucediendo. Además, vamos a ver lo que significan estas líneas fuera de la cancha. Entonces note que no tenemos en nuestro Leo Pidge ninguna etiqueta de enlace y no tenemos ningún inicio de script , Pero sin embargo sabemos que somos amigos en CSS cinco y estamos haciendo referencia a archivos de script Java. Entonces lo que está pasando es que conseguimos un archivo en nuestra carpeta de advenimiento llamado Bondo Conflict. El conflicto de Bundle en realidad contiene referencias a nuestros archivos para nosotros desde aquí, realidad podemos triunfar todos los archivos en remolque. Uno a lo que llamas parte de la función. Entonces toma contenidos que CSS, por ejemplo. Entonces este es el nombre fuera del paquete para nuestros archivos CSS en. Entonces, una vez que este bunless llame, va a incluir el bootstrap sobre archivo CSS así como nuestro sitio que CS está lejos y se verá en nuestra página de diseño. Después veremos que sólo tenemos un call toe el paquete como se especifica por nombre. Está bien. A ver si le das una mirada asesina, te das cuenta de que tienes scrips. El Orender agrupa una consulta. Y si buscamos en el paquete config ves que tienes tus paquetes, Queridos consulta aquí, amigos por nombre. Pero sólo es incluir algo en la carpeta de scripts que en realidad podemos investigar eso. Entonces vamos a guiones en luego está buscando a Jake o un Dash. Sí tenemos archivos que tienen jaker y Dash encendidos, entonces está buscando alguna versión, que sería el número de versión, que tenemos 3.4 punto uno en punto gs. Entonces más o menos esto nos da una manera agradable, dinámica toe siempre incluir cualquier versión J Query esté aquí porque si fuera 1.1 punto cero, que creo que fue antes de actualizarlo, entonces se estaba referenciando y nosotros no tenía que cambiar nada. Ahora que lo actualizamos, todavía no tenemos que cambiar nada aquí porque solo buscaría cuál es la versión que está disponible para mí en ese momento. Lo siguiente que queremos hacer es usar new gets toe incluye todos los archivos Jake o tú yo script en esas hojas de estilo en nuestros productos, así que solo nos dirigiremos a ti sal de la parte superior abierta. Pero si no lo haces, entonces puedes distraer a Lee el proyecto en Go to Manage, obtienes paquetes Esto Así entonces líder aún explora lo que está instalado para obedecer su o ir a bro. Por lo que nos interesa navegar porque queremos algo que actualmente no tenemos en nuestras soluciones, así que solo puedo empezar a tocar. Creo que lo he buscado antes. Entonces, Jake, donde tú subiría y llenaría fuera de curso de Terrell. Y entonces siempre podemos dar click en los resultados de búsqueda en. Entonces sólo lee la descripción. También mira al autor y asegúrate de que parezca que es legal. Hermanos adelante. Puedo cambiar versión si quiero, pero creo que lo último estable en Go Ahead y Click Install Me refiero al problema juntos y a hablar bien y permitir que se ejecute. Después de unos momentos y una operación exitosa, deberías ver algunas nuevas FAZ apareciendo en tu carpeta Contenido así como en tu carpeta de scripts . No, tenemos que dejar que nuestra configuración de paquete incluya estos archivos en Render. Ya tenemos un paquete para archivos CSS. Algunos solo quieren agregar el archivo CSS que está asociado con mi hija completa Entender incluir el archivo CSS auto completo en mi paquete. Entonces solo voy a ver karma y luego voy dedo por camino en el camino a esto es a través de contenido slash beans slash base slash auto completa. Eso es CSS. Por lo que nos dejé slash ahí. Entonces es la caja de ahí. que significa, ya sabes, cualquiera que sea el camino de fuego antes de que tengamos el contenido que incluir eso. Seguro que za ballena dinámica para crear y relativo eres yo y luego contenido slash y luego de contenidos, para que van a la carpeta del equipo en adelante luego a partir de dos años mayores van a base y luego dentro del beisbol que buscamos auto completar que CSS sepa. Lo que esto hará es cuando se renderiza sobre Leo Page, y renderiza este bundle huntin CSS. Entonces cargará todos los archivos CSS de una vez para que no tengamos que ir a cambiarlo todas partes ni nada que lo cambiaría un solo lugar y simplemente se renderiza. Otra cosa que queremos hacer es incluir a nuestro Jake Preocupación Dash Tú despedí. Ahora ya estamos incluyendo Jake viste Entender copiar esto porque sería una dinámica similar en entender. Para colocarlo, voy a crear un nuevo paquete de script y lo llamé J Query Dash you I. Y entonces lo que voy a modificar aquí son los scripts. Consulta Slash J. Dámete. ¿ Por qué? Porque ese es el nuevo puncher. Suficiente para archivos a través de consulta dashi versión de guión ancho. Por lo que es J. Corey Dash U Dash on en cualquier número de versión. Entonces si lo obedecemos, son años abajo de la línea desde 1.12 dos puntos. Ah, entonces mientras el disco en realidad piratas de alambre se mantenga intacto encendido, sigue siendo un incendio de J s que éste, el conflicto sólo recogerá la última versión y simplemente correrá con ella. Entonces eso es ventaja de usar este país del paquete. Por lo que siempre podemos simplemente guardar los cambios ahí y luego porque agregamos un nuevo conflicto de lo que vamos a tener toe met o página de diseño saber al respecto así que solo podemos duplicar esta referencia de paquete de consulta J y solo agregamos Dash Te recuerdo o su madres. Por lo que el curso de Jean siempre debe venir primero. Entonces la dependencia es después. Entonces ten eso en cuenta si vas a estar reordenando la orden fuera estas rapido No, solo podemos ir a ejecución rápida y ver cómo es nuestra corte. Ahora podemos rápidamente simplemente ejecutar o aplicar e ir a ver fuente de pago, que luego nos mostrará que todo debe ser renderizado. Entonces tenemos nuestro guión rápido aquí siendo incluido Jake Worry y luego Jake donde tú y luego recuerdas que bootstrap sale las palabras para que todo se renderiza como se esperaba. Pero vemos un error aquí con sobre longitud como Onley Bootstrap que CSS se está renderizando y deberíamos tener tres archivos. Entonces solo estoy saltando rápidamente de vuelta a nuestro conflicto de paquetes que es es y s e aquí donde está el aire que tenemos. No nos referimos a esto adecuadamente cerebral, que por lo que deberíamos tener una coma después de cada bloque fuera de cadena, no un signo más. Por lo que tenemos bootstrapped. Eso es sí, es lado de coma, no coma CSS. Y entonces nuestro pedido completo archivo CSS. Y si tenemos otros. Y simplemente usamos una coma después, debilita otra vez al callejero y a ver si tenemos alguna mejora. Está bien, así que podemos volver a mandar eso. Onda. Y ahí vamos. Por lo que todo se está renderizando correctamente con para bootstrapping donde estamos al lado de CSS. Y luego dónde estaban todos los completos que cirrosis. Y así es como vas ambos incluyendo un paquete. Al menos prueba dentro del paquete de JavaScript y CSS en su conjunto. Tú lo harías. Hola. Es para renderizarse en tu Leo Peach de una manera dinámica fuera de curso. Habiendo incluido en la página de diseño, esos expedientes estarán disponibles para cada otra página, incluyendo nuestro discurso de inscripción, que es donde se estará ejecutando nuestro tribunal auto completo. 20. Implementar la autocomplete JQueryUI Autocomplete: Oigan chicos. En este video, comenzaremos a implementar nuestra función completa de Jake Worry Auto para ayudarnos con la inscripción estudiantes en un curso. Pero antes de meternos en todo eso, quiero pasar rápidamente por algunos ajustes que he hecho a la aplicación desde el último video. Y puedes sentirte libre de emular estos si lo deseas. En primer lugar, eliminé el contacto en un barco enlaces de sobre no barras. Y no, solo tenemos cursos a domicilio, estudiantes e inscripciones, está bien. Y en realidad podríamos simplemente agregar conferenciantes aquí. Considerando que agregamos un modelo para gestionar la estrella conferencista justo que rápidamente así son suficientes. Barno sólo tiene enlaces. Entonces nuestros modelos que hemos implementado o estamos implementando En segundo lugar, notarías que tengo un estilos que renderizan en esto está renderizando algunos estilos para Jeker. USO agregó un nuevo paquete a mi conflicto de paquetes para la consulta J Por qué en estoy incluyendo el basado todo ese CSS que incluye la base que CSS Andi parece que los archivos de Syriza así como y tuve el picker de fecha estaba ejecutando un experimento. Pero esto realmente debería ser auto completo, no CSS así que estoy agregando estos dos archivos a mis importaciones de tesis en general, y los estoy haciendo referencia en la cantera DJIA. Tú las estrellas renderizan bien, Y si surge la necesidad, dedo del pie tiene más de lo que podemos simplemente ponerlos en Como sabemos necesitamos dedo una vez más, el orden importa. Entonces, ¿quieres asegurarte de incluir todos los archivos base primero antes de los archivos CSS individuales ? Está bien, Entonces, no, Antes de que nos metamos en nuestro Jake o emoción, quiero que solo pasemos de vuelta a nuestra documentación aquí, nos dio geek o tú i dot com y solo echar un vistazo al auto completo característica. A lo que estamos apuntando es cuando escribimos el nombre de un estudiante aquí y seleccionado en este ejemplo , se hace con carga de programación. Entonces digamos que los lenguajes de programación serían nuestros nombres de estudiantes, y escribo algo como HS. Entonces la expectativa es que cualquier estudiante cuyo nombre contenga HS presente en este desplegable. A ver si ese tipo mira cuando te metes una mejor imagen. Entonces cuando seleccione que será que los estudiantes los que estarán y rodarán una vez que haga clic en crear, así que lo estamos haciendo en pedazos en este momento. Solo estamos lidiando con implementar el pedido completo en el siguiente video. Entonces nos ocuparemos de realmente hacer eso, agregando en la funcionalidad de inscripción de nuevo en visual studio. Iniciamos este ejercicio encontrando primero la vista de creación para sobreinscripciones. Y luego vamos a hacer un poco de re fracturación. Reorganizarse para los campos de sólo por aquí va a enloquecer. Tenemos un campo para la codicia. Tenemos un campo para el curso I D, que nos dio una lista desplegable con todos los cursos ahí dentro. Tenemos ah, campo para estudiantes, que nos dan una gota de enfermedad para los estudiantes. Andan otro para conferencias una vez más con una droga. Andi, En caso de que te hayas metido en tu preguntándote por qué tenemos tantas listas desplegables. Una vez que hay una relación de uno a muchos significado con las inscripciones, es literalmente muchos dedo del pie uno. Con todos estos, tantos estudiantes pueden estar en el establo de matrícula. Muchos cursos pueden estar en los establos de matrícula y muchos conferenciantes. Encontrarás que dotnet en andamios en realidad te dará listas desplegables. Auto generado dándote todo fuera de tus posibles opciones en todo lo que realmente se pasa por es el curso yo d Ya que eso es lo que realmente está almacenando la tabla de inscripciones de todos modos. Entonces quieres listas desplegables para algunos de estos y para algunos fuera de estos campos, Quieres cambiarlos un poco al momento de las inscripciones, entonces probablemente no necesitemos concreto. Entonces en realidad, la codicia no recuerdan en la base de datos que habríamos permitido No. Cuatro grado. Por lo que a la hora de crear una inscripciones que es agregar una clase, ver quién es la conferencia y agregar a los alumnos, realmente no necesitamos la calificación para que pueda quitar esto como en el momento de la creación, muchas veces inscripciones. Probablemente no sepamos quién es la conferencia, así que no necesitamos la conferencia que D ahora mismo. Todo lo que es realmente importante es especificar qué pisos estaban tratando con Onda, qué estudiante o estudiantes serán asignados a esta clase. El Una parte de esta actividad será hacer todo este procedimiento lo suficientemente dinámico como para que no tengas el El usuario no tendrá el dedo del pie tira y la espalda del bro cada vez que quiera agregar un estudiante solo pueden seleccionar el curso y en otras y arriba partes fuera la página se actualizará. Pero no estamos muy en este momento. Solo estamos lidiando con el auto completo. Soy referencia invernal, la documentación DJIA Query Una vez más, sólo para que tengamos un aprecio por el núcleo que estamos a punto de escribir por la parte fuera del auto. Documentación completa en la que quiero enfocarme es un servicio de datos remoto Jason P. Entonces vamos a estar usando a Jake o E E. Jackson. ¿ Los ves? Yo preferencias, de consulta deducciones, que en realidad llamarán a un enlace o llamarán a puntos finales de Jason que vamos a mí en este momento que va a servir alguna lista de la fecha abuso en este caso, la lista de estudiantes basado en lo que está siendo apretado. Entonces el ejemplo aquí es que tienen una bestia de datos fuera de las aves encendidas. Tienen un euro para la búsqueda y su especificación del tipo de datos sobre lo que se debe buscar. Entonces eso es lo que beat representa el término a buscar en entonces, sobre una consulta exitosa, Andi, devolverá los datos y mostrarán los datos bien, y luego cuando uno sea Cilic, sobre una consulta exitosa, Andi, devolverá los datos y mostrarán los datos bien, y luego cuando uno sea Cilic, se 'd así que en realidad es sólo un evento en todo este proceso. Por lo que se acabará la fuente fuera de los datos. Ajax lejos están viendo la longitud mínima para cualquier trimestre de búsqueda debería ser también. Entonces dos personajes y luego activas la búsqueda en, luego quería seleccionar. Entonces desean desear dedo del pie derecho al amor que seleccionaste esto con ese valor y que yo d Ahora empecemos nuestros viajes. Voy a escribir esta cosa del guión. Esa es la tercera parte de mi fij underst poniéndolo en la parte superior aquí fuera de las vistas podemos tener una sección distinta para ello a mí, probablemente más adelante extraiga esto y poniendo un archivo de script y referencias directamente. Eso está bien. Pero por ahora, sólo estoy amenazada interrumpida aquí. Y porque divertido Jake preocúpate a veces arrancarías taquerias. Documentar puntos listos. En realidad puedes simplemente ver la función de signo de dólar en. Entonces abres de cerca. A mí me gusta simplemente cerrar mis funciones al mismo tiempo. Nos estamos calentando aquí. Pero antes incluso de empezar a escribir Jake, donde tenemos que asegurarnos de que tenemos los controles apropiados o lo que estamos a punto de hacer ahora recuerda que queremos poder escribir el nombre de los alumnos y tenemos una lista desplegable trabajando con así no podemos teclear el nombre del alumno con un bono de droga. Y hay otro factor a esto que la lista desplegable está rastreando en realidad a los estudiantes i d. Un cuadro de texto no estará rastreando. La idea de los estudiantes estará rastreando el nombre del alumno. Entonces con el fin de facilitar la necesidad de que el usuario vea el nombre en un cuadro de texto sobre la solución real para obtener una idea empeñar el envío fuera del formulario. Tenemos que enseñarle a esta avena Anderson a borrar esto y lo voy a reemplazar por dos controles un cuadro de texto. Onda Campo oculto. Muy bien, Así que lo hice muy rápido, y solo paseando por las dos líneas fuera de la cancha, que realmente no debería ser tan extranjera. Tenemos nuestro ayudante HTML aquí y estamos usando una edición para ti podría haber usado un cuadro de texto para Eso está bien entonces te das cuenta de que no son de mí fuera de la edición para y los libros de texto eran algo diferentes a la hora de referenciar sobre CSS clases, pero de cualquier manera, ambos necesitan modelo Andi. Estamos asociando el cuadro de texto con estudiantes de punto modelo. Ese nombre en la razón por la que estoy usando el nombre es que no usamos la columna de nombre completo en estudiantes que usaban nombre y apellido Andi. Solo voy a usar esto porque sólo necesito un cuadro de texto. Ahí está Recordar la edición para Is Going toe arrojar un control que está en consonancia con cualquier tipo de datos que te estamos diciendo que lo necesitamos. Entonces en este caso, es un texto. Obtendremos un cuadro de texto. Podría haber usado el apellido si utilizara un modelo de vista, que sería una abstracción de la entidad real proveniente de la base de datos. Podría haber incluido un campo de datos de nombre completo en que en entonces usado nombre completo. Por lo que hay múltiples formas de hacer esto. Sólo lo estoy manteniendo simple. Um, así que piensan que se abre corriendo más tarde en el curso, realidad ven modelos, y así puedes crear que vivan de la obstrucción, pero para no, vamos a apegarnos a esto. Entonces tenemos modelo que para Student ese nombre y luego solo le estamos dando algunos nuevos atributos HTML Andi, incluyendo la clase formada US Control, lo que le da ese bootstrapping y luego la segunda línea es un campo oculto porque queremos un camión. El alumno i d. Cuando el alumno es seleccionado de sobre orden completa lista desplegable una vez más, este cuadro de texto autocompleto sólo nos va a mostrar el nombre. Pero lo que necesita la aplicación es el i. D. Así que sólo estamos usando un oculto para que el usuario no tenga que ver el 123 en el 2000 y lo que sea el estudiante que d. valor sea. Entonces le estamos ocultando eso al usuario. Pero entonces cuando se presenta el formulario, esto es lo que realmente necesita el modelo. Esto es lo que el controlador necesita para ver alguno. Simplemente podemos echar un vistazo rápido a la opción de post para crear eso. Es realmente sólo querer estudiante me d no le importa el nombre en el apellido. Muy bien, así que esto está logrando un equilibrio entre dar al usuario una interfaz visualmente aceptable en realmente asegurarnos de que nuestra solución sea una ruptura en mantener la integridad fuera de los datos que estamos pasando. Muy bien, así que has modificado esto en. Acabamos de tomar toda la caja desplegable, y sumamos toma meses, lo cual va a servir el propósito fuera tenernos facilitar nuestra funcionalidad auto completa on ah, escondido para lo cual solo está rastreando el i d off el estudiante que se selecciona de este auto libros de texto completos. Ahora de vuelta en J consulta, um, camino en realidad puede simplemente ir a la documentación y probablemente copiar en paz. Por lo que esta puntuación en el cambiarlo a medida que avanzamos, su entender agarrar rápidamente algo de esto en distante ajustarlo a medida que voy a lo largo. Muy bien, entonces aquí tenemos nuestra cuerda Onda. Vamos a empezar a re fracturar dedo o propósitos. El primer cambio son los elementos objetivo ahora en Jake. O bien puede apuntar a cualquier elemento utilizando el I d. Valor. Al igual que en C. asistencias. Cuando en CSS quieres el elemento por yo d uso el hashtag o si querías por punto de usuario de clase Así que en esta situación, realidad puedes referirlo dirigido por el i d. El uso del hashtag son directamente por el nombre de la clase usando el But en este caso, lo que queremos apuntar es el Editar cuatro y después tenemos el nombre de punto de estudiante. Entonces, en otras palabras, cualquiera que sea el valor del modelo aquí que determine el i d fuera de los elementos. Entonces el i d fuera de esta lista desplegable está bien, en este caso, curso yo d el i d para 84 es estudiante. No es eso lo subrayado Cuando tienes a esa entidad en su propiedad, entonces suele ser ah, en el marcador. Entonces esa es un área un poco gris. Pero entraré en modo debug y te mostraré cómo puedes determinar cuál es esa idea será, en este caso, oculto para sus ideas. Estudiante i d. Así que sólo quiero rápidamente va a ser audaz más en show te los i ds como renderizaron. Muy bien, Entonces así es como se ve nuestra página de creación en este momento, habiendo despojado, dicho a otros cuadros desplegables en tenemos ideas de curso. El sello que sabemos podemos cambiar usando nuestras clases de método en. Tenemos estudiante i d sobre lo que queríamos determinar fue el i d para este elemento, que es un cuadro de texto para que solo pueda ir allá e inspeccionar Elemento Y luego mirando lo que se renderiza aquí, puedo ver que el i d para el elemento es estudiante. El modelo es estudiante dot nombre de pila. Entonces en la corte sería estudiante dot nombre de pila Pero ese punto es un elemento ilegal en una idea en HTML. Entonces lo que se renderiza es en realidad no me subrayaste primero así que simplemente podemos salir de la gente más rápido o podemos soportar más a la gente ya que lo que estamos a punto de hacer también va a modificar la interfaz Así que sólo podemos cambiar este elemento objetivo de estudiante en el marcador de primer nombre y luego vemos que estamos siguiendo la cancha ese auto completar, que está llamando a la función auto completar en esos elementos objetivo. Ahora el siguiente paso es cambiar La u R l que se está referenciando. Íbamos dedo del pie tener nuestra propia Europa puesta. ¿ Tienes que desperdiciar los preparados? Puedes escribirlo usando el HTML helper recon. Simplemente escríbalo usando el mismo patrón off slash on in point. Entonces voy a usar el escondite in in point method donde fuimos a ver una slash y yo quería en las inscripciones. Ese es el controlador, ¿verdad? Entonces sería inscripciones slash Qué es acción tú y yo lo llamaré. Consigue a los alumnos. Por lo que necesitamos entrar en nuestro controlador de elementos de controlador más adelante. Hacer una acción que se llamará siempre que esta función esté involucrada. Muy bien, en el tipo de datos, solo podemos modificar esto a Jae Sun. ¿ Todo bien? Jason Pisa se especializó. El ex Así Jason vio unos cuantos más cómodos usando Jason. Puedes probarlo con cualquiera de los dos y avisarme cómo funciona. Y luego para los datos, es necesario especificar qué? El nombre fuera de la variable que va a contener cualquier dato que se esté ingresando en este elemento. Ese es nombre. Entonces eso significa que cuando construimos nuestro jeison en punto, tenemos que asegurarnos de que esté equipado. Onda se preparó para tomar alguna variable llamada término sobre el valor que estamos pasando su solicitud ese término. Por lo que esto realmente podría ser cualquier cosa. A esto se le dará vuelta. Esto podría ser consulta. Ya sabes, como quieras llamarlo, solo asegúrate de que cuando estemos implementando esta acción, tengamos una facilidad para reconocer que este es un parámetro que se está pasando. Por lo que llegaremos pronto a ese punto. Yo solo estoy construyendo todo este récord jaco línea por línea. La siguiente función es el éxito, y el éxito básicamente se involucra cuando la fuente trajo exitosamente pero datos y así éxito Hunting dichos datos sobre Lo que voy a hacer aquí es en una semana debo glándula. Entonces al declarar, ya sabes, si realmente no consigues unas herramientas de depuración como visual studio para tomarlo línea por línea, entonces lo que es una buena técnica es recibir. Console ese log y luego piensas, solo pon lo que sea que quieras escribir a la consola y este consejo serían los municipios o consola. Entonces cualquier hermano que use en este caso prueba que siempre tiene un lapicero aquí, y ves que aquí tenemos un error y te explicaré esta época. Pero cuando hacemos consola de ese amor, sea cual sea el valor a eso que queremos ver impreso aquí, solo se puede ver ahí, y así es como vamos adelante y construimos en debug y asegurarnos de que los valores que esperamos sean los valores que estamos recuperando. Podemos dejar la longitud mínima que propiedades. Entonces eso significa que no implicará el auto completo hasta mínimo también. Personajes han entrado al cuadro de búsqueda son los elementos que en este caso, son estudiantes en el deporte. El nombre en selecto verá. ¿ Qué quieres que haga cuando se ha seleccionado un valor? Esto toma dos parámetros evento que dice, cuál fue el evento que me dispararon Y tú o r se consulta o datos, sea lo que sea, y eso es lo que sea el valor que se está devolviendo, el éxito o lo que sea el valor que sea siendo seleccionado. Entonces sólo voy a poner una consola que ama aquí una vez más sólo para que podamos asegurarnos que estamos recuperando algunos datos sensatos. Yo quiero salir de la gente más rápido, y voy a explicar esa flecha. Permítanme que lo suba rápidamente. Entonces esta flecha básicamente está diciendo que Sí, estás tratando de inicializar algo cuando hay un problema de referenciación, y lo habría dicho más de una vez. Y si pudiéramos que veamos que el problema de referenciar está justo aquí bien iniciado. No nos refrescamos bien, Así que está dentro. Ese problema de referenciación está ahí mismo en nuestra función. Invocación. Y eso es porque y voy a sacar lleno Hey, es fuente para que podamos verlo. Eso es porque, o guión aquí se está ejecutando de forma aislada. Esta es una preocupación geek bloque fuera de cancha más profundo y agentes encendidos. Lo estamos ejecutando en la parte superior de la página cuando somos amigos en G consulta al final fuera de la página. Y recuerda que dije Secuencia importa. Entonces lo que necesita pasar es que estos scripts necesitan ser referenciados por encima de este bloque en DSO . Todo va a estar bien así que voy a salir más de la gente. Acude a mis diseños el día. Yo sólo voy a mover el CF. Como dije, tienes una serie de técnicas mango del dedo del pie. Esto. Se ve un número fuera de caminos. Simplemente voy a mover mis archivos de script al principio de la página. Todos los derechos de rodillas, modernizador. Muy bien, entonces tengo todas mis estrellas y todos mis guiones renderizando primero. Y entonces para cuando todo se hubiera renderizado y llega al cuerpo o a la vista, recuerda la vista se renderiza ahí, y en este caso, esta es la vista de la que este guión ya hubiera sido tomado. Cuidado en términos de Qué bibliotecas prerrequisitos Necesita la referencia para poder hacer el auto competir en las funciones de consulta G. Sepa que he hecho la parte JavaScript. Voy a modificar mi controlador y añadir la acción, y sólo lo voy a agregar debajo de la eliminación confirmada. Y vamos a escribir esto tan rápido. Entonces, primer lugar, sí especificé que quería que se publicara el tipo de llamada. Yo no lo hice. Entonces voy a modificar que queríamos ser una causa post. Entonces solo diremos, teclea. Estamos justo entre comillas post. Entonces nuestro euro debería llamarse en post, y luego en mi controlador, voy a modificar el núcleo en Add on h et put People's Jason function result. Entonces después de saber habríamos visto resultados de acción cada vez. No, necesitamos resultados de Jason. Tenemos un público y es J hijo, y ves ese interés ya que te está ayudando solo. Por lo que nos dan construido en función que puede regresar. Resultados de Jason y sí dije que la función debería llamarse Get Students. Entonces solo estoy asegurándome de que se esté derramando su carrito Aan den. En lo que estamos pasando es un parámetro llamado ¿cómo lo recuerdas término? Entonces nos estamos separando término de cadena de metal y luego esta función vamos al claro de variable llamada estudiantes Onda vamos a hacer solo correr con consulta así Pero sé que debemos saber esperanza preocupaciones funcionan porque hemos estado andamios Hemos estado modificando tribunal en DSO Solo queremos correr una semana más o menos. Yo sólo voy a ver un DVD puntos sobre qué mesa recurrentes estudiantes y luego usar no son operador de nuevo. Y luego vamos a entrar en algunos off la naturaleza dinámica off link on a diferentes trabajos en DSO. Vamos a declarar un objeto abstracto con los valores de datos que realmente, realmente necesitamos para esta operación. Una vez más, los dos valores de datos que sabemos que necesitamos son el nombre real, que debería popularmente, este cuadro de texto sobre el I d cuyo valor queremos colocar en los elementos de tesis. Sabemos, sin embargo, que sólo podemos mirar un elemento a la vez cuando libera el nombre ya sea el nombre o el apellido del día. La idea. Bueno, está ahí. Entonces lo que necesitamos es nombre y d adelante para ser muy completo en nuestra búsqueda. Queremos asegurarnos de que cuando escribimos dos letras cualquiera, esa combinación de letras debe estar ya sea en el nombre o en el apellido, no sólo en el nombre. Entonces, a pesar de que estamos usando nombres aquí, no queremos limitar nuestro auto completo solo nombre. Entonces, una vez más, esto es solo porque no usaste un modelo de vista, y no estoy mirando el nombre completo en la capacidad de especificar cuáles deberían ser los libros . Sólo estoy usando estudiantes que de nombre en. Si todavía no te sientes cómodo de que en realidad podrías simplemente usar un tipo de campo de entrada regular es igual a texto a cuadro de texto activado, entonces podrías decir que el I P es igual al nombre del estudiante en ti. Dale la clase bootstrap fuera de curso, y luego podrías usar eso aquí, ¿ verdad? Entonces es solo que está mostrando que el nombre fuera de la I. D. Ha sido material para la operación que realmente estaban a punto de realizar, así que solo dejaré este poco apagado. Corte aquí tiene un punto de referencia, si lo desean, pero voy a seguir con esto ya que pasan tanto tiempo ventilando eso tan TV que los estudiantes que recogen, lo que luego me obliga a poner algunos parámetros. Y tengo que especificar primero Expresiones Lambda. Entonces Q. Aquí es donde realmente puedo declarar un objeto totalmente nuevo que no necesariamente se parece objeto de un estudiante. Alguien para ver nuevo, porque quiero un nuevo sobre objeto abstracto con mis propios valores. Por lo que Q está apuntando a un nuevo objeto en. Voy a llenar este objeto abstracto con un nombre Andi por nombre voy a ver que tienes . Y luego recuerda, la Q me da acceso a todas las propiedades fuera de lo que estuvieran mirando. Entonces ten Q ese nombre de pila, y voy a hacer que parezca un nombre completo, alguien para planear gato con nombre en el último día en y decir lindo punto en el apellido encendido para poner un poco de espacio ahí para que se vea amigable de usar. Entonces ese es el nombre completo fuera del alumno en entonces también queremos en i d Así que una vez más, este objeto abstracto me permite declarar las propiedades que quiero sobre la marcha, y luego construirá estos objetos en Poner la lista de ellos en esta variable estudiantes . Está bien, así que d será igual a puntos de zapato. Yo d estudiante me d más bien a la derecha La raíz de dicho una vez más de nuestra base de datos y nuestra mesa de estudiantes seleccionar en nuestro nuevo objeto. Eso es más o menos lo que eso está diciendo. Seleccionar estas propiedades en un objeto completamente nuevo en este objeto ardiente tiene el nombre de la propiedad on Dame estos valores en él tiene un i. D. Dame esos valores y podríamos seguir adelante y simplemente poner tantas otras propiedades como deseemos . Pero una vez más, realmente sólo necesitamos el nombre y la idea. Entonces esos son los únicos dos que estoy seleccionando. Pero no está terminado ahí porque recuerda que queremos un filtro. Por lo que esto es seleccionar a todos los alumnos en remolque. Objetos a estrenar con nombre y yo D. Eso está bien, pero el hecho es, necesitamos filtrar a término. Tenemos que asegurarnos de que lo que sea que se esté devolviendo como estudiantes tenga término ahí dentro, así que vamos a sumar donde podamos usarte en el comando de filtro sería que patos. Y luego te das cuenta de que los dos no sólo está recogiendo nombre de idea porque solo está intentando filtro de dedo en cualquier objeto nuevo en el que acabo de seleccionar todos estos datos. Muy bien, entonces quiero ver que somos nombre, que es una combinación off nombre y apellido contiene andare expresión es un término que fue a caminar por todo esto una vez más. Estamos corriendo una preocupación. Um, estamos almacenando los resultados en una variable llamada Estudiantes en esta cantera está buscando en la tabla de estudiantes, y está seleccionando todos los registros, pero los está reconstruyendo en remolque sobre la marcha. Modelo muy abstracto que acabamos de crear. No le dimos ni siquiera le daría un nombre que acabamos de crear. Es solo para este propósito. Y digo que quiero el nombre, que será él levantaría nombre. Además, Andi tiene espacio vacío y apellido solo para que parezca fácil de usar. Ese es un nombre completo que podría haber llamado a este nombre completo si quisiera. De verdad depende de ti. Yo sólo mentí, hombre. Como nombre en. Después seleccionamos el yo d en decimos el yo d debería tener los estudiantes i d. Y entonces vamos a filtrar todo eso. Todo esto se filtrará fuera el nombre que se devuelva, cariño. Adolescentes este término y luego al final todo eso, tenemos que regresar porque notaste que esta línea roja ha estado aquí todo este tiempo. Tenemos un Jason resultados del para regresar. Va a ser un poco diferente. Entonces vamos a ver un regreso al sol encendido. Nosotros queremos regresar son estudiantes variables sobre solo pasamos todos esos métodos que necesitamos sujetar. De acuerdo, así que estamos devolviendo un Jason resultados de este objeto o un conjunto de estos objetos como Jason objetos en. Simplemente agregamos en ese comportamiento toe alot get podemos construir y solo asegurarnos de que no tengamos errores. Está bien, así que aquí en nuestro navegador solo probaremos y veremos si todo va bien con o llamadas de función. Podemos mirar rápidamente en DSI. El alumnado que tenemos en nuestra base de datos partes añadieron unos cuantos más de nuevo en crear Recuerda que nuestro derecho frío? No, solo es monitorizar por una consola que ama lo que está pasando con cada paso. Entonces cuando la fuente tiene éxito, la inicial escribe el Escarabajo que está trayendo de vuelta a la consola en también, si algo seleccionado. Pero ahora mismo, creo que sólo podremos ver lo que vuelve a la consola permitido. Entonces si toco t, sabes que no pasa nada porque no es longitud mínima por cinco p on, entonces ves la longitud mínima y ves que hay algo de acción sucediendo. Pero si perforamos hacia abajo en la consola, vemos que en realidad está trayendo de vuelta algunos datos para nosotros. Si sigo E A, trae de vuelta pizza de nuevo sobre ves que en realidad sólo se filtra en base a ese cierto jabón que estamos trayendo sobre el nombre en que estamos trayendo el yo d Como especificamos en nuestro objeto abstracto que realmente nos solo necesito nombre y yo d. Lo que tenemos que hacer es realmente mostrar el desplegable real para que podamos hacer clic y seleccionar ese valor aquí pero en segundo plano. Seguro. Esta idea valor en nuestro debería campo arte así de vuelta en nuestra aplicación e hizo un cambio aquí rápidamente y yo solo caminando a través de ella todo el punto fuera de la fuente teniendo los parámetros del dedo del pie, solicitud y respuesta. Les pusimos ese nombre, pero realmente los nombramos ¿De acuerdo a qué? Por lo tanto la solicitud es lo que se pasará en las respuestas. ¿ Qué es C? Entonces lo que se recibe vuelve con éxito al usar nuestra función de respuesta. En realidad podemos marcar algunos elementos de datos, que habrían sido lo que se devuelve. Por lo que la fecha está en ary fuera de los resultados de búsqueda. Por lo que la respuesta está fregando todos esos elementos de datos. Andi, estoy llamando Ah, estoy pasando cada registro de este ari a esta función y estoy devolviendo un valor de etiqueta fuera del elemento ese nombre. Por lo tanto, recuerda que ítem o datos tendría honoree off objetos que tienen i d y necesidad. Entonces cada elemento aquí va a tener un nombre y luego yo d. Entonces lo que estoy haciendo es devolver objetos con Mabel en valor en una etiqueta I D y valor especialmente importante para lo que se muestra en la pantalla. Cuando los nombres aparecen en el médico, hueso caído aparece uso. El rótulo es lo que aparece en la compilación drop y al hacer clic en los campos de texto, el cuadro de texto, entonces ese sería el valor. Por lo que no querrías cambiar estos de nombre. Ya que el nombre es lo que se espera que se vea en ambas situaciones, sin embargo, I D una vez más es sólo por unos propósitos gimidos tan bien, Dr Interface. Andi, traigo la consola de que podemos ver qué está pasando en. Entonces voy a empezar a escribir así que no recuerden nada sobre dos personajes viaje salteado. Y luego ahí se ve que aparece si escribo voluntad. Muy bien, Así que en realidad es buscar el nombre completo para cualquier auto para secuenciar. Y ves que por cada resultado exitoso, estamos recuperando ese objeto de datos bien, Alguien para realmente seleccionar uno y recordar que tenemos una consola a la que encanta el seguimiento cuando seleccionamos y que fue que se disparaba ahí encendido. Vemos aquí que tenemos el objeto ítem con la etiqueta, que habría sido lo que se muestra al golpear abajo el valor que se nota va al cuadro de texto en la I. D. Así que no, nosotros necesitan escribir alguna cancha para asegurarnos de que nuestro campo oculto se poble con ese Aggie. Porque si lo miramos específicamente, no hay nada que cambie. Tenemos el campo oculto y no hay valor, bien, que no es lo que queremos. Por lo que queremos que cuando seleccionemos ese nombre, se actualice el valor de este campo oculto. Por lo que de vuelta en visual studio, modificaremos nuestra función selecta. Entonces actualizar el elemento en cuestión y el elemento en cuestión son las ideas de los estudiantes. Entonces deja la consola, esa larga cantera en lo que voy a hacer es ver el cartel Abrir kits de pecho abiertos británicos y marcas de petición . Estudiante I d on D. J Donde nos hace fácil un conjunto de valores para que solo podamos llamar a la función de válvula encendida. Acabamos de pasar en el valor que queríamos que nos dijeran que para poder ver los puntos de datos. Bueno, perdón le pusimos nombre a la consulta Saluzzi Working dots on. Entonces recuerda que esto en realidad está siendo mucho dedo del pie sobre objeto con artículo sobre artículo tiene nombre en Di Di Di. Por lo que necesitas puntos de consulta. Hola, Tim. Puntos en. Voy a especificar yo con claves comunes, ya que eso está alterado aquí. Por lo que su valor naval sobre la idea. Entonces estoy configurando el valor o estudiante de campo oculto. Yo d a eso me d en. Recuerda que eso está sucediendo siempre que se despide un evento selecto. Entonces entiendo típicamente volver atrás, refrescar. Y lo intentas de nuevo en Solo observa el valor para el campo y su ego. Ya ve, se está actualizando. Entonces si digo test, tenemos estos dos. Se está actualizando cada vez. Entonces no, sabemos que en realidad estamos rastreando el valor del alumno que está siendo seleccionado. Ahora, una vez más, nuestro objetivo es que tengamos este discurso sobre ese botón crear encendido cuando pudiéramos crear veamos una actualización dinámica y recargar fuera de la lista de estudiantes actualmente asociados a esta fuerza. Entonces, para no, solo voy dedo del pie seleccionar uno del cuadro desplegable y me voy a inscribir, probar a estudiante en esto en ellos con el click crear, y luego vemos qué pasa. Está bien, lo siento. Tenía un punto de descanso en ese pedacito fuera de cancha. Pero si vamos aquí y miramos el objeto, ¿ves que estamos pasando lo esencial? Por supuesto que d No, no. Pero entonces hicimos mucho. No, para la conferencia i d y para la avaricia a los estudiantes lo está consiguiendo así que las dos partes más importantes este modelo en particular están obteniendo datos. Entonces si ponemos cinco y seguimos, entonces seremos redireccionados a las inscripciones en ese discurso. Ahora, una vez más, vamos a estar haciendo algunas modificaciones a ese proceso completo para que no vuelva aquí cada vez. Y luego tenemos que crear nuevo En realidad tendremos una vista parcial fuera de la lista fuera los estudiantes inscritos, refrescando cada vez que creen, o cada vez que esto haya cambiado, actualizará el show. Exactamente quién está inscrito en la clase seleccionada el Una vez que un estudiante sea ingresado aquí y seleccionado, seleccionado,se refrescará tenerlos dinámicamente sin alejarse de este discurso 21. Crea un formulario de JQuery/Ajax: Hey chicos, En este video, estaremos buscando implementar en forma Ajax para o aplicación. Ahora la razón por la que utilizaríamos una forma Ajax que es mecanismo de JavaScript, es para reducir el número de recargas para nuestras páginas. No, sí recordemos que cuando estamos creando una inscripción, queremos dedo del pie la Anamika Lee una búsqueda de un estudiante, razón por la que implementamos aquí, Jake, donde estás auto completo widget en o cuadro de texto Andi toe act demasiado disfuncional a lo que estaremos haciendo es implementar lo que llamamos un formulario Ajax ahora en forma Ajax reducirá en realidad la necesidad de que nos actualicemos entre hacer clic o enviar botón para recordar que cada vez que hacemos clic creado realmente está configurado en el controlador para navegar a nuestra lista. Lo que queremos hacer es permitir que el usuario entre continuamente y pasante entre en esta página sin necesidad de navegar lejos y volver. Entonces ahí es donde la forma Ajax jugará una enorme ventaja. Ahora lo primero que vamos a querer hacer es en realidad incluir algunas bibliotecas Jeker y lo haremos a través de un nuevo get. Por lo que pasaremos a nuestro proyecto. Haga clic derecho en Ir a Dinero puede obtener paquetes porque no los tiene instalados. En realidad iremos a Bro's y buscaremos a Jake Preocupación en E Juckes molestos para que solo podamos teclear. Supongo que solo puedes escribir deducciones en solo escribiendo eyectos. El mejor resultado es nuestra biblioteca que estamos buscando. Por lo que Microsoft que j consulta sobre la verdad sobre rechazo molesto por lo que sólo podemos seguir adelante y clic en instalar en DeLone. Se llega a hacer lo suyo, está bien. Y con el éxito de eso, sólo podemos confirmar en la carpeta Over Scripts que sabemos tienen a Jake donde punto Unobtrusive. Eso es o un poco de incendios demasiado nuevos que esperamos ver Tarde Get ha concluido su instalación. Lo siguiente que queremos modificar es nuestro paquete convictos, por lo que queremos crear un nuevo paquete cuatro o nuevos archivos de script. Solo estoy duplicando esta JIA Carolina nombró al Jake o Dash Ajax y en su lugar fuera tratando volver a escribir esto. Acabo de copiar el nombre del archivo aquí en Source Explorer y simplemente pegarlo a exponente todo el proceso de mecanografía después de guardar este lyinto sobre la configuración del paquete. Entonces queremos dejar o maquetar página saber que hay un nuevo paquete intones. Acabo de incluir de rodillas nuestra preocupación Jake mintiendo. Entonces recuerda, el orden importa. Mientras esté debajo del friki o de la tierra, entonces no deberías tener ningún problema. Por lo que Jay Curry plato Ajax es nuestro nuevo paquete que necesita ser renderizado. Ahora podemos volver a golpear para más crear vista y luego comenzaremos nuestras modificaciones. Entonces lo primero que queremos hacer es cambiar el tipo de formulario para que veamos que estamos usando HTML que comienzan forma en cualquier lugar, usando un HTM regular de forma. El nuevo tipo de forma en tono es un jack saucy Ajax justo aquí colocando HTML en. Estamos empezando sobre la forma Ajax. Muy bien, así que estamos viendo que Ajax tiene un pequeño error en el neath it y eso es principalmente porque nuestra forma Ajax en realidad toma algunos parámetros. Entonces iremos adelante y llenaremos estos mentores de parte y te guiaremos por ella paso a paso. El primer parámetro es la post acción. Entonces la cosa es, cuando el formulario Ajax se somete, necesita saber a qué en el controlador debería estar llamando? Muy bien, así que todos sabemos que la forma el uniforme por defecto llamará a la opción de post fuera lo que esté en el control. Entonces tenemos que crear aquí, que renderiza la forma inicialmente encendida. Entonces una vez que podrías enviar, automáticamente va a buscar la versión de post http de crea Over con la forma Él adopta e incluso con el formulario H M A, pero es requerido para el formulario H Ajax. Tenemos que precisar qué acción debe llamarse. Por lo que podría especificar que quiero llamar a crear. Pero luego lo voy a modificar un poco, y voy a crear otra, y va a escribir esa acción juntos. Alguien que llame a este anuncio estudiantes mezclados. Tenemos que especificar qué controlador es este. Acción insulta al controlador de inscripciones, y luego tenemos que añadir nuevas opciones de él Juckes, y sólo traeré la línea aquí para que solo podamos llenarla a toda vista. Ahora las opciones son más como propiedades fuera de esta nueva clase, o te das cuenta de que esto está consiguiendo que el equipo de color cite desde visual studio que es una clase, por lo que solo estamos agregando valores y ciertas propiedades que se llaman acciones Ajax. Entonces el 1er 1 que vamos a agregar es el método http en hoy es que hemos estado usando post , así que solo podemos significar en eso. Por lo que sí especifica que queremos toe post on. Entonces podemos decir sobre el éxito. Deseamos hacer una cierta acción sobre lo llamaré lo hice Todo bien, Entonces, al éxito fuera de esta llamada post, entonces queremos llamar a esta función y a otra sobre fracaso. Nosotros queremos hacer este. Hay bastantes propiedades que realmente puedes implementar en la sección Opción Ajax . Andi, he adjuntado una documentada esta conferencia indicando cada una de esas opciones y cómo se pueden apalancar. Lo siguiente que queremos hacer es implementar o nueva función llamada estudiantes de anuncios. Ah, bueno o nueva acción llamada a los estudiantes, y vamos a poco más en nuestro controlador y lo voy a agregar debajo de la función de creación de post existente . Entonces, como dijimos, esto va a ser una publicación http on ya solo sé en caso de que este sea el primer año viéndolo intentar la palabra prop on, luego presionado dos veces. Eso sólo implementa nuestra propiedad. Pero es una forma más rápida de saltarse público y él sólo puede sentarse en el tipo que desee. Esta no es la propiedad. Por supuesto, esto en realidad es una persona telefónica encendida. Entonces estamos creando la post acción en estudiantes en campo de golf. Agregar estudiantes se va a tomar un parámetro o departamento un similar al existente crear. Pero entonces te llamaron que estamos esperando sólo dos valores, realmente y verdaderamente de esta forma y en conferencias anteriores, iría a ver en eso en realidad, lo que esto hace es cometer cualquiera en que se esté viniendo a través del campo no está enlistada aquí. Entonces no se incluirá en sobre modelo. Entonces vamos a usar eso. Pero entonces en realidad vamos con el dedo del pie. Precisa exactamente qué fusible queremos, cuáles son el curso que d sobre los alumnos, i d Esos son los dos sentimientos que realmente deberían estar viniendo de esta forma. Entonces para este parlamento, entender dedo del pie, pedir prestado este puntaje rápidamente ya que su muy similar. Excepto que en realidad sólo voy a precisar que sólo quiero el curso que d sobre la idea de los alumnos . Ya que nada más se está agregando realmente de esta forma. No, Para esta acción, en realidad me voy dedo del pie hacer un try on catch. Por lo que solo escribo tendencia en doble top on. Después llenó el resto de ese bloque frío para mí, y luego podemos empezar a llenar o a cancha. Entonces voy a seguir este patrón porque mucho de la cancha que se generó para nosotros sigue siendo aplicable. El estado modelo es válido, está comprobando. ¿ Faltan datos? Entonces entre los valores de herramienta que estamos esperando, que son de curso idee y estudiante yo d está o fuera de ellos faltan en este escenario el, entonces si es válido, entonces esperamos dedo del pie agregar el registro a la vuelta. El punto de vista entiende de Copia que. Y por favor eso en mi tribu cuadra encendido. En realidad, voy a modificar esto Solo tienes que ver así. Voy a convertirlo en un método asíncrono. Por lo que acabo de poner un fregadero y luego tarea y envolver esto así centrándome en las simples y bajas frutas colgantes de este bloque fuera de cancha. Lo que voy a hacer es decir, tratar de hacer esta operación en. Si se siente, entonces enseñe esta acción. Entonces, primero trabajemos por la parte. Eso no se siente así. Si el estado modelo es válido, entonces queremos dedo del pie. Agrega la inscripción, guarda los cambios. Pero luego te das cuenta de que un tipo de retorno aquí está mal, porque lo que tenemos que hacer es devolver un hijo de G s similar al agujero. Lo devolvimos en. ¿ Dónde está esa función? Muy bien, así que tuvimos una función de resultado Jason aquí en regresamos a objetos G. Asan. Por lo que necesitamos hacer algo similar para esto. Ya que se trata de un resultado de Jason, vamos a modificar esta acción para ser un objeto Jason que se está volviendo sobre. No recuerda que con los objetos Jason, realidad puedes especificar el contenido de estos objetos para que se adapte a tus necesidades. Entonces voy a especificar nuestro objeto personalizado que tiene dos parámetros. El 1er 1 va a ser es éxito, que pretendía ser un lingote alguien a decir Verdadero porque si el estado moderno es válido en toda esta obra vendida, entonces fue un éxito. Por lo que estoy pasando un lingote para decir que su éxito es cierto en también, estoy agregando un mensaje que pretendo mostrar a mis usuarios. Entonces voy a ver voy a decir alumnos agregados con éxito y luego siguiendo el patrón fuera de nuestra función anterior G s hijo, ¿ entiendes? Para pasar el comportamiento de clase baja Js. Hola. Consigue Parmenter para que nuestro objeto Jason esté completo. Por lo tanto, permítanme repasar esto. Estamos probando esta operación en Si el estado modelo es válido, entonces vamos a seguir adelante y a la inscripción en ella a la base de datos para luego devolver un estado de éxito con un mensaje de éxito. Entonces eso dejará o granja? No, Recuerda, acabamos de implementar esto o formal? No, en base a lo que se devuelve que fue o éxito o un fracaso. Entonces tenemos el escenario de éxito. Necesitamos ponerle dedo en el escenario de falla. Entonces para nuestra tierra justa, en realidad podemos simplemente copiar esto porque sería algo muy similar en esto sería fuera de esta declaración porque esto sólo se hace si es válido, y entonces verás a la gente dar la vuelta a esto. A lo mejor le darás la vuelta para ver si no es válido, luego devolvió un fracaso. Pero entonces si es válido, entonces haz algunas otras cosas. Entonces depende de ti. Pero quiero dejar esto como está encendido. Entonces si es válido, entonces fue exitoso el. Si no regresa o si esto falla, entonces será caer a esta línea. Entonces si por defecto esta línea, lo que significa que el estado del modelo no es válido, entonces devolvemos el estado de falla Ah. Por lo que nuestro éxito sería en realidad el mensaje de caídas andare leería de manera diferente. A lo mejor los alumnos no se añadieron con éxito. Entonces si fue en ello con éxito, entonces esperamos nuestro objeto Jason. Tengo ah, cierto para este valor y este mensaje. De lo contrario debería volver esto en el mismo Wien. Si se lanza una excepción o se captura una excepción en lugar de lo que queremos hacer no es lanzar porque la historia en realidad se bloquea son aplicación, pero queremos manejarla con gracia. Entonces si no estás tan familiarizado con un intento, atrapar lo que este esos Una vez más intenta esta operación, y si toda esa operación se siente en cualquier lugar, entonces atrapa la excepción. Entonces se puede ver bien, si hay una excepción o una flecha general que no se contabilizó en su totalidad. ¿ Lo manejo? El paso de la línea hace que el programa se estrelle. En este escenario, no queremos que nuestro programa se estrelle. Se quiere que el usuario solo tenga el mismo tipo de experiencia que habría tenido si se tratara una entrada inválida. Entonces queríamos mostrarles que se siente así. Podemos simplemente reutilizar. Esta es la línea de éxito Andi ver algo diferente y probablemente así que quiero decirles Toe, por favor contacte er administrador en. Entonces probablemente podamos poner en detalles fuera de la flecha. Probablemente quieras mostrarles detalles reales fuera de la flecha, ya que solo son usuarios finales. Pero si estás más avanzado de lo que probablemente puedas poner como un correo electrónico para despedir después del administrador o del Web master cuando una excepción es Scott para que puedas estar al tanto los sucesivos fuera del software. Ahora hay una cosa más que quiero agregar a esta validación antes de que en realidad siga adelante y añada un alumno en. Eso es un cheque para ver si el alumno ya está inscrito en un curso en particular. Entonces lo que estamos haciendo es permitir a alguien desde o crear vista donde permitir que alguien seleccione un curso sobre luego tipo de nombre de alumnos y luego haga clic en enviar. Entonces llamará a esta función pasando en la idea del curso y los alumnos a los que me d luego tratan preguntarles. Lo que no queremos es una situación en la que el mismo alumno se esté agregando al mismo curso más de una vez que vamos a poner en una validación aquí vamos a añadir esa validación del pie esta afirmación. Por lo que me meto justo un poco rápido fuera de la cancha, que va a consultar nuestra base de datos. Alguien para salvar nuestro está inscrito es igual a. Y entonces puedo decir DB puntos inscripciones. Y luego voy a usar otra función de enlace, que se llama cualquiera que realmente solo diga. ¿ Existe algún registro en la base de datos que cumpla con condición articulo? Entonces tal y como está y va a decir, ¿hay algún registro dentro del establo? Entonces voy a construir sobre esto cualquier función con nuestras expresiones Lambda que estoy usando, también, que es nuestra carta universal para expresiones Lambda, y estoy comprobando si hay algún curso que d en nuestra tabla de inscripciones. Ese mucho es el curso del que d viniendo. O modelos de inscripción. Aquí está nuestro modelo de inscripción entrando por nuestro perímetro sobre estoy viendo ¿Hay alguna idea de caballo en esta mesa que sea igual a este deporte yo d que estoy seguro sería sí por no, correcto. Si tienes Internet, pocos registros y debe haber al menos un registro. Tal vez, tal vez no. Pero esto volvería cierto. Pero esto no es todo lo que nos interesa porque quieres saber que hay. Por supuesto que sería tanto. ¿ Esta Onda está en ese mismo disco donde encontramos tanto? Que hay un estudiante yo d. Eso mucho son nuestras inscripciones. Entonces esta línea una vez más, está viendo Por favor dime si hay alguna grabación de mi tabla de inscripciones Donde el curso i d sobre los alumnos. Yo d mucho la idea del caballo y estudiante que d entrando a través de esto. Jason, solicita estrella este post solicitud a esta acción en este objeto modelo. Entonces queremos decir si está inscrito, entonces no queremos tenerlos. Por lo que esto está diciendo está inscrito. Por lo que sólo puedo agregar modificar esta Esta condición en la declaración para decir si los estados son válidos , lo que significa que ambas propiedades que se requieren para el formulario están ahí. Andi está inscrito, es igual a caídas. Está bien, entonces si es válido sobre el alumno no está inscrito, entonces podemos proceder. Entonces si alguno de estos evalúa el dedo del pie no ser cierto, entonces debería plantear que el alumno no estaba en ello con éxito, y podemos enmendar. Este estudiante del NC ya está en su Un estudiante ya está inscrito, por lo que es bueno tener mensajes descriptivos para cada paso para que sepan exactamente lo que está pasando y probablemente campo blanco. Segundo, sentidos modificados Falla del sistema Una vez más, probablemente no quieras decirle a los usuarios que hay una falla del sistema. Se puede encontrar un mensaje agradable, agraciado para poner su, pero sólo te estoy dando los escenarios a medida que vienen en ayudarte a dedo del pie. Apreciar por qué tenemos mensajes personalizados para cada estado. Por lo que una vez más, estamos viendo que somos pollo, esa matrícula estable para ver si hay algún registro que tenga tanto curso I D como estudiante I d existente antes de nuestra acción actual en. Si se sabe, entonces sólo decimos OK volver que fue exitoso. Si hay nuestro si uno fuera estos valores falta, entonces regresamos cae con una falla en si hay una flecha en hacer algo apagado esto aparece, entonces vamos a coger la excepción y simplemente volver sobre Aramis. Es ver que hay un fracaso sin chocar nuestro programa. Entiendo término en esta línea un poco en Die lo dijo de esta manera para deletrearlo por si eres nuevo para ver afilado y no estás completamente familiar. Pero entonces en realidad sólo podemos ver si no está inscrito. Por lo que esto en realidad evalúa a lo mismo que estaba ahí. Sólo sé. Entonces si prefieres escribirlo de esta manera, y de esta manera se ve un poco más corto, Pero entonces , ya sabes , como principiante, puede que no lo absorbas tan rápido como como lo tenía antes, Pero estoy solo mostrándote que puede durante cualquier forma, Así que solo vamos a construir y asegurarnos de que no tengamos errores. Podemos ejecutar nuestro proyecto en. Estoy sentando un punto de descanso aquí en nuestra acción de estudiante de anuncio para que podamos ver eso cuando hacemos clic en enviar. En realidad, los datos se están pasando a esta función. Entonces sólo voy a hacer una prueba rápida aquí en Dustin para cambiar la propiedad desplegable sobre no voy a poner en un estudiante. Simplemente voy a ver cómo se comporta esto, Alguien para hacer clic en crear. Vemos que nuestro punto de ruptura está activo. Si paso el cursor sobre mi modelo de inscripción, veremos que tenemos el curso que d volviendo. No vuelve nada para nuestros alumnos. Yo d Así que si pasé por el cordón sobre chico pisó hasta que llegué a las declaraciones alrededor la cantera y este regresado cae porque no hay matrícula que exista con curso yo d siendo cuatro en estudiante yo d siendo cero en. Entonces seguiré pisando y luego ves que se saltó esta afirmación if por completo porque el estado modelo no es válido porque no se está proporcionando valor para un estudiante i d. cual se requiere en base a nuestro diseño. Por lo que golpea nuestros objetos Jason, que está regresando que hay un fracaso en la audición fuera del alumno ahí hay un mensaje. Ese es el suyo. De acuerdo, ya está inscrito un estudiante. Entonces a veces esto puede no contar toda la historia, ¿verdad? Entonces ten mucho cuidado con el mensaje, porque en este caso no es una falta de inscripción, sino o no es la presencia off sobre existente y romano, pero es la falta de datos válidos. Por lo que quieres ser muy claro cuando tengas ese mensaje, cualquier esperanza podamos expresar sus cinco y seguir adelante. Después miramos hacia atrás a nuestra página web y vemos que ni siquiera nos alejamos. Y voy a poner en un estudiante esta vez alguien para tipear para estudiantes o tipo de ella todavía está trabajando. Entonces hago clic en crear en. Después volvemos a tocar el punto de ruptura. Y si miramos en nuestro objeto, vemos que estamos recuperando un estudiante. Yo d bajo curso yo d en d. sólo voy a fijar el punto de descanso a la declaración if rápidamente, primero de cinco en. Entonces estamos golpeando nuestra declaración if y vemos aquí en esta ocasión el estado modelo es cierto porque está volviendo válido a valores válidos. Por supuesto, I D y estudiantes on también está inscrito es cae, por lo que no hay conflicto en cuanto a dónde debe ir este bloque fuera de curso después. Si paso, um, um, y me saltaré por delante de la sentada del punto de descanso sobre angustia a las cinco en adelante. Entonces ves que parpadeó en la pantalla porque hizo esto. Entonces lo hizo encendido porque no, fuera de este campo, se fue dedo del pie esta porción de éxito en ¿Ves en El estudiante está en ello con éxito como lo diseñamos para ver una vez más. Si algo fuera de esta operación falló, lo que habría pasado es que habría saltado al regreso de la Isla Cat que Jason Falls también. Entonces no puedo expresar un cinco y continuar y ves que las páginas se mueven Nada cambió en el terreno de juego como eso es en esta etapa es bueno y malo están por cuando vuelvo a la lista. Veo aquí que la inscripción que acabo de hacer fue exitosa en Sí, vamos a modificar este discurso porque tal como está, no está muy claro. Tenemos columnas mal coincidentes y datos deficientes, Así que esto se va a modificar pronto, pero quiero enfocarme en el hecho de que la inscripción ALS agregó para cálculo en el estudiante Tajiri leído en la página misma no redireccionó. Tuve que volver manualmente a las vidas para verlo. Muy bien, entonces eso significa que nuestros agentes forma Ajax está funcionando como pretendíamos. Entonces si busco a otros alumnos, lo quiero on let for y podría crear y solo me voy a quitar mis puntos de descanso en este punto porque estoy seguro que está trabajando. Entonces solo continúo en la página, no es refrescar la página no hizo nada, pero luego tengo que volver a la lista y refrescar. Entonces cederá eso. Eso también fue una inscripción exitosa el. Entonces si tomo crea de nuevo habiendo ya inscrito en Ledford en cálculo on, podría crear, no ves nada. No pasa nada, ¿verdad? Bueno, nada está pasando visiblemente Así que con nuestros puntos de descanso, habríamos visto que golpea a la cancha y habría evaluado las caídas porque esta inscripción ya existe y de la misma manera, si refresco esta lista, entonces verás que esto no se está repitiendo, no importa cuántas veces pudiéramos crear, así que sepan que estamos seguros de que nuestro código funciona. Lo que necesitamos hacer es realmente ayudar al usuario a estar seguros de que el código está funcionando porque, como dije al principio, no hay pistas visuales aquí para decir, Oh, fue exitoso o fue un fracaso. No. ¿ Recordamos De vuelta en nuestra forma habíamos especificado ciertas opciones para el éxito de la ONU y sobre el fracaso, y entonces sólo pusimos en texto aquí, pero no expliqué del todo en su momento qué significaba el texto. Por lo que en realidad se trata de funciones o nombres fuera de funciones que se deben llamar cuando tiene éxito y cuando hay un fallo. Por lo que estas funciones realmente se implementarán en JavaScript. Por lo que tenemos aquí el bloque de guión. No tengo que crear uno nuevo. Simplemente lo uso en el claro una nueva función en JavaScript. Simplemente dices función y le das el nombre y dije sobre éxito, quiero que se llame a la función agregada. Entonces recuerda que en realidad estaban devolviendo aquí un objeto Jason. Entonces este es un nuevo objeto que tiene dos propiedades es éxito y mensaje. Por lo que voy a preparar mi función para el prospecto fuera conseguir alguna respuesta de la llamada de Jason. Entonces solo estoy usando la palabra elevar nuestra respuesta de recursos, como sea que quieras llamarla. Entonces así es como lo estoy llamando. Por lo que una vez que esto haya terminado de procesar y se le recuperó el auto o la respuesta, entonces provocó que el teléfono mostrado agregado. Te estoy dejando saber que esperaba aguantando dedo del pie sobre objeto en el que se va a corresponder con lo que sea que esté regresando. Por lo que raise aquí va a encarnar las propiedades. Su éxito Mensaje Andi. Por lo que sólo voy a dedo rápidamente implementar esto en va a poner en una declaración if y ver si rez atracado es éxito. Entonces queremos utilizar una función de consulta Judio. Entonces el signo del dólar realmente vigente ese geek Oracle Andi en este formulario mostrado lo quiero. Así que renderiza algunos elementos HTML. Entonces voy a dar el dedo del pie sobre elemento que voy a llamar éxito. Yo lo estoy llamando por d. estoy llamando éxito y voy a decirle que se sienta rápido. Entonces esa es una de esas cosas de consulta de JIA. El G consulta Meeks Celoso Krypton venció, ya sabes, más fácil y más rápido de implementar. Si escribieras javascript vainilla para lograr algo como esto, entonces probablemente tomaría Ah, poco. Unas líneas más fuera de cancha. CJ Korea realmente agiliza todo ese proceso de conseguir alguna interactividad en nuestra aplicación. Y entonces sólo voy a copiar este cable en ellos, no voy a implementar otra función y llamarlo campo en dime Justin para modificar esta declaración y ver si no, entonces quiero que el campo quepa en rápido. Así que quiero sobre el éxito en Elemento llamado Lo siento en un anuncio exitoso. Entonces queremos que un elemento llamado Éxito se alimente en Andi si se siente en uno un elemento llamado campo Pies en. Muy bien, Así que después de agregar estos tipos, me acabo de dar cuenta de que te habría engañado con algo, y voy a explicar qué es después de mostrarte la cancha. Por lo que agregué las vidas para el éxito en campo. Andi, si nos fastidiamos yo discreto ID uno, Dave cuatro campo. Andi, le di el i d sentir fuera de curso para que pudiéramos apuntarlo usando el hashtag on. También, le di la alerta de clase en alerta Ángel de o bootstraps que una caja roja saldrá en exhibición nuestra flecha. Entonces lo que hice aquí fue en lugar de apagado usando el mensaje proveniente de nuestra respuesta Jason un barco o el estudiante fue agregado o no, y luego tratando de encontrar una razón me acabo de dar ah era mayorista justo aquí en estática, arreglado para ver allá fue un error agregando al alumno a este curso y pudo ver Por favor revisa tus datos e inténtalo de nuevo. O póngase en contacto con su administración y explique lo que sea que quiera aquí en un gran texto general Onda también para el éxito pongo en el mensaje estudiante en ello con éxito. Entonces lo que va a pasar es que en el éxito llamamos agregado el, luego agregarlo se va a comprobar si los mensajes de éxito realmente cierto y luego renderizar esta función. Si quisiéramos agregar el texto que regresa del Jason, podríamos simplemente anexar el texto aquí en el uso de JavaScript toe este elemento porque Reyes habría levantado ese mensaje. Apenas renuncié ha planteado ese éxito por lo que acabamos de decir. Queremos el elemento éxito en el que queremos subir. A lo que queremos levantar es plantear ese mensaje. Entonces así es como realmente seguirías ajustando el mensaje de flecha real o mensaje de éxito proveniente de la respuesta del hijo orgy en remolcar el contenido fuera del hazlo si no quieres hacerlo de esta manera donde tienes el texto estático en el diff, entonces puedes hacerlo de esta manera donde simplemente lo inyectas. Entonces solo te estoy mostrando las dos vías. Por lo general acabo de poner en el texto estático, pero lo dejo ahí para su futura referencia. No. Cuando dije que te hubiera engañado, me puse un poco exagerado y tendría que hacer eso sobre el fracaso se corresponde con la respuesta Jason . Y eso fue en absoluto. Tan infalible. Er realmente significa que si el llamado a la acción se siente una especie de razón, lo que significa que esto no fue exitoso, hizo llamar a los adultos y no pudo encontrar esto. Entonces, ¿qué época quieres mostrar? Por lo que esta función realmente sería llamada si hubiera un fallo total del sistema. Al intentar dedo del pie llame a la acción Post. Entonces eso es lo que en más significa realmente. Entonces si no están en el lado de la base de datos, la adición fuera del registro fue exitosa. O si en este caso, la forma en que escribimos nuestra aplicación, si hubo una excepción tratando de hacer esta operación y captó nuestra respuesta siempre esté devolviendo una respuesta, El formulario Ajax lo ve como un éxito llamar porque enviaba datos y recuperó una respuesta . Entonces realmente y verdaderamente, para facilitar este campo versus escenario de éxito para la adición de nuestras propiedades para la base de datos adicional para la tienda de inscripciones, entonces necesitamos hacerlo un poco diferente. Entonces me voy de pie ver fracaso aquí, ¿verdad? ¿ Andi? Es decir, puedo implementar una función para esto, pero no anticipo, al menos para este escenario, que mi mamá tendría un fallo total del sistema. Pero lo que voy a hacer es en realidad modificar la función agregada así sobre el éxito. ¿ Qué queremos hacer? Y llamamos, agregado No agregado, no es la razón por la que estamos comprobando su éxito es que el éxito puede ser el verdadero o falso porque recuperamos una respuesta y es o verdadero o falso Así que si es cierto, entonces queremos exhibir nuestro live llamado éxito y luego puedo ver otra cosa Así lo demás. Significado rez no se plantea que el éxito no es cierto. Entonces podemos llamar a nuestra otra función, que delineé campo sobre su paso en el resto. Entonces de la misma manera podríamos apuntar a ese Dave para el éxito y poner en el texto. Podemos apuntar a esto. Ahí está yo solo dejaré eso ahí para tu futura referencia. Una vez más, pongo aquí el texto estático, así que no voy a usar esto, pero siéntete libre de experimentar. Entonces para el agregado, si esto no es exitoso en realmente, realidad, no tengo que hacer a si las declaraciones. Entonces si no tiene éxito, entonces quiero llamar sentir. Hay alguien para sacar esa cuadra fuera de cancha encendido. Entonces lo que quiero hacer es simplemente pasar. ¿ Esto se llama disfunción? De son como sección, por lo que o es exitoso. Andi se agregó y es un dedo del pie exitoso o fallido. Agrega que es la base de datos y así vamos a mostrar hashtag field diff, que es un vivo con peligro de alerta. Entonces si fue exitoso de lo que vemos alerta éxito, y aquí es donde empiezas a ver un todo. Bootstrap hace que sea fácil para él mostrar extraño para dirigir a los usuarios con muy poco esfuerzo. Por lo que una vez más, un infalible A realmente significa que si intentaba hacer el post llamado a esta acción en, no pudieron encontrar la acción puede ser renombrado. Es simplemente realmente no podía comunicarse con el servidor. Entonces es cuando llamas falla para poder implementar otro hijo Fung. Cuatro. Fracaso. Está bien, está bien. Por lo que de vuelta en modo debug, vamos a probar la teoría de que o funciona frío así una vez más en una adición exitosa fuera en la inscripción, y esperamos que vamos a ver, dar, aparecer en feed, insultar la animación, y se puede ajustar la velocidad en. Simplemente puedes consultar la documentación de geek worry para ver las diferentes opciones de velocidad. Se puede decir lento, rápido, y creo que se puede decir medio. No estoy seguro si el rango medio encendido de la misma manera. Si se siente entonces esperamos ver un rojo dar para mostrar o fallar para que solo intentemos que alguien pruebe primero el escenario fallido Así que solo voy a hacer clic, crear y obviamente esto debería sentir encendido. Ahí vamos. Por lo que lo alimenta. Hubo un error, agregando al alumno a este curso porque tenemos un curso que d on. No especificamos a un estudiante el. Entonces voy a tratar de sumar a la izquierda para dos. Veamos una red de velocidad, validación de NBC. Y entonces podríamos crear en. Ahí vamos. Por lo que vemos un poco *** en nuestra esquina. Donde tenemos que hacer se está exhibiendo simultáneamente, que no es necesariamente lo que queremos. Andi, ya sabes, no es ideal. Entonces vamos a modificar un poco nuestra corte. Entonces voy a decir Muy bien, Así que la modificación, quiero decir, es decir que si algo está en ello con éxito, entonces queremos desvanecernos, falló o simplemente podrías decir, Es pantalla Cae dedo del pie. ¿ Quieres hacerlo? Es decir, había muchas maneras en que se podía hacer eso. Entonces solo estamos viendo desvanecerse rápidamente en alimentación en el éxito en Si falla, entonces queremos desvanecer esto rápidamente. Simplemente quieres saber que cuando se siente que no estás viendo lo sucesivo y viceversa. Entonces como podemos ver más cambios aquí en, entonces inténtalo de nuevo. Entonces voy a tratar de crear este campo, Muy bien, así que voy a tratar de agregar a la minería de datos en el Ahí vamos, así que sólo está mostrando uno a la vez. Entonces si elimino esto en recrear, entonces ves que reemplaza la flecha con el éxito y viceversa. Por lo que esencialmente hemos agregado que la forma de Egipto y hemos añadido una agradable limpieza. Hablamos mucho, gente del dedo del pie, sumamos estudiantes y los inscribimos a nuestra clase. No obstante, mucho que hemos hecho bastante fuera del trabajo aquí, el trabajo aún no está terminado porque aún queremos una forma más interactiva para que mantengan alejado el camión. Quién está en qué curso significado para ver quién fue agregado. Tenemos que volver a nuestras inscripciones listando por aquí en. Tenemos que mirar, entonces no vemos el rumbo, pero luego todo está mezclado. Sí, podemos hacer algunas modificaciones de canteras para hacerla ordenada por el estilo de corte y demás, pero sigue siendo un poco mezclada así que en el siguiente video. Lo que vamos a hacer es modificar su, por lo que modificar nuestras etiquetas fuera de curso en. También modificaremos todo este creativo tú que, en base al curso que se seleccione, veremos una tabla a continuación aquí con todos los alumnos de ese curso sobre. Cuando cambiemos esto, actualizará esa vista o esa porción fuera de esta vista en mostrar sólo a los alumnos respecto a los cursos seleccionados de este desplegable. También, cuando sumamos a un estudiante con éxito, esperamos verlos reflejados en esa lista de manera inmediata. 22. Vista y actualización de datos: hay en nuestro último video, completamos nuestra creación off en forma Ajax que nos carga dedo del pie de manera más dinámica, someto inscripciones de estudiantes a cada curso sobre hizo. En este video, estaremos pasando por agregar en actualización automática para cada forma de misión. Entonces, ¿qué pasa bien? No es que obtenemos una señal visual cada vez que un estudiante es exitoso o no, agregado con éxito, Sin embargo, no sabemos quién se agrega porque aquí no hay lista para verlo. Tendría que volver a listar a vista las inscripciones cada vez que queremos, evitar. Y entonces lo que vamos a estar haciendo es realzar sobre la forma actual de tal manera que cada vez que un estudiante sea agregado con éxito, codicia estará no aquí mostrando la lista de estudiantes y se refrescará. Además de esto, estaremos viendo el concepto fuera de las formas parciales. La primera modificación que vamos a hacer es cambiar las etiquetas fuera o controles aquí sobre forma en estudio visual, agregué Amita clase de teatro para la tabla de inscripciones el. Eso lo hicimos en una conferencia anterior, así que lo hice esta vez para la mesa de inscripción. Pero notarías que lo hice en el remolcador de atributos de datos para los identificadores. No obstante, en nuestra página, todavía decían Estudiantes idea y curso yo tan largo cuento corto, el nombre para mostrar. Realmente no funciona para las ideas, pero eso no es problema, porque siempre podemos simplemente ir a nuestro punto de vista. Ese es nuestro creativo tú, y sólo podemos cambiar esos manuales. Voy a dejar ahí la cotización original, y voy a volver a escribirla. Entonces voy a decir Label on, digamos, cuatro en la ventaja fuera de esta etiqueta para como te das cuenta, esta es una etiqueta cuatro elemento, y está apuntando al curso yo d. Así que realmente y verdaderamente lo que esta etiqueta y cuatro atributos aquí lo hace en el HTML original. ¿ Es aloes que al hacer clic en la etiqueta, resalta automáticamente cualquier elemento que esté siendo dirigido? Por lo que el lado de la etiqueta 44 simplemente destacaría o lista desplegable con el caballo i D. Como su i. D. Siguiente dentro de esta misma etiqueta, otros otra clase y bajo Skopje y paz, las clases de bootstrap que se generaron originalmente con nuestro control cosquilleo que ese signo porque esto es sólo HTML puro. Esta no es nuestra maquinilla de afeitar por lo que tenemos etiqueta para pobre Saidi en. Le dimos las clases de correa de arranque y luego el texto manual en el que me gustaría escribir su curso . Entonces solo puedo quitar esta línea y lo repetiré para el nombre del alumno en No, que hemos completado que podemos cambiar el dedo del pie del texto del botón, tal vez inscribirme y luego cambié la clase de botón a Bt y éxito. Por lo que obtenemos un botón verde en entender para guardar DTN dash block. Está bien, para que puedas ponerte creativo fuera de curso. No, Como dijimos al principio, la expectativa es que cada vez que engañemos a nuestro somete en ya sea una respuesta exitosa de o Jason son controlador cada vez que un estudiante está en ello con éxito, entonces esperamos que haya va a ser un refresco. Entonces lo que estamos a punto de hacer es crear una vista parcial que se vaya con el dedo del pie, sólo mostrando a los estudiantes que están en reglas. Ahora el concepto de una vista parcial es que quieres una vista dentro de unos pocos en. Permítanme sólo poner eso en hábitos de perspectiva. Entonces recuerda que tenemos un despido. Melocotón y en la página Leo realmente renderizamos una vista. Por lo que una vista es una parte del pitch de Julio. Bueno, una vista parcial en realidad está diseñada para ser una vista parte, a menudo existente. Por lo que tenemos este punto de vista en. Lo que queremos hacer es crear otro muchos de ustedes dentro de esta vista que es el único responsable de cargar un bit particulado fuera de la información, que serían las inscripciones en. Entonces vamos a establecer que cuando cambiemos el valor en la lista desplegable que esa gran se refresque automáticamente, así como cada vez que presentemos una inscripción para curso y los alumnos que esa codicia refrescará. Y así los nuevos datos fueron luego a hacer una modificación más aquí, ya que me gustaría mi Grado dos debajo de mi formulario. Por lo que acabo de poner ah, regla horizontal. Sólo para que tengamos una pequeña línea para mostrar. Entonces voy a crear un div y voy a dar esto diferente. Yo d fuera de datos. Por lo que los datos o datos Dave va a almacenar sobre vista parcial siguiente arriba. Queremos realmente crear esta vista parcial, por lo que seguimos el mismo procedimiento que hicimos en la primera parte cuando estamos creando vistas donde hacemos click derecho o carpeta Inscripciones y seguimos adelante y hacemos clic. Agrega en ti Gracias a querer darle un nombre, alguien que llame a esto inscribe nuestro show sobre el uso del guión bajo. El frente es realmente sólo la convención de nomenclatura. Algunas personas crearían una carpeta para los espectáculos par. Simplemente uso un guión bajo para representar cada vez que tengo una vista parcial en. Ese es un patrón que se puede ver en otros lugares. A continuación, quiero seleccionar una plantilla, por lo que la plantilla sería ¿qué tipo de página quieres? Y en realidad quisiéramos una lista porque queremos una lista los alumnos que están inscritos. Entonces yo solo ciclista en el modelo que debería cubrir y esto es matrícula. Verían que ya tienen este click, pero originalmente puede verse así, pero una vez que haces clic en crearnos parciales, ves que se despega de la página de diseño porque lo duro de ti en realidad va a heredan todos sus guiones y estrellas y todo eso desde cualquier punto de vista en el que se esté renderizando, que inherentemente está heredando eso de la Littlepage, por lo que automáticamente saldrá genial. Y luego hacemos click. Agregar Todo bien, Así que si vamos a echar un vistazo rápido a lo resultante, verás que se ve igual a nuestros espíritus índice. Si voy al índice y lo carga, casi podrías sostenerlos uno al lado del otro y ver que son prácticamente idénticos. Entonces, esencialmente, la plantilla de lista te da lo que aparezca en tu página de índice o páginas de índice usando realmente esa plantilla de lista. Entonces vamos a modificar un poco esto. Tenemos mesa. Sí, Onda, podemos dejar la codicia, Podemos dejar título del curso. Y sí notas que tienes curso que títulos fuera de curso es la entidad que se incluye en la inscripción el. Pero la razón por la que dije incluido es que si echamos un vistazo a nuestro controlador de índice verá tipo de lo que está pasando aquí. Entonces cuando cargamos de inscripciones de ira en, ejecutamos eso donde se ve que hay una parte de ella es que incluyen, e incluye a cada entidad que sea necesaria o posterior. Entonces esto se llama ansioso cargar donde estás viendo, estoy trayendo de vuelta cada registro aquí en luego solo incluye los datos correspondientes o relacionados para cada clave externa Severo. Llámalo nuestro en mesas romances llenas de llaves extranjeras. A ese tanto. Estudiante Saidi I D y conferencia i d. Entonces donde ver traer de vuelta toda la información resultante para el curso correspondiente . Yo d estudiante i d y conferencista i d. Y así en nuestra opinión, realidad era sólo un Lowe's ver modelo que representa punto de inscripción cualquiera entidad no cualquiera propiedad fuera de esa entidad para que pueda dejar el título del curso encendido. ¿ Ves que ese estudiante de apellido está regresando? No necesariamente sólo queremos lo último que sería en el apellido coma, nombre o el nombre completo. Por lo que estos son realmente solo los encabezados de la tabla, como se hubiera visto cuando miramos las inscripciones a continuación. Y por eso se ve así. Por lo que llegamos a modificar todo esto esencialmente sobre estos aire, sólo el nombre para mostrar para tan celiente. Verdaderamente, lo que se está mostrando cuando esto se renderiza es realmente justo lo que meta tags son nombre de visualización que habíamos puesto sobre la propiedad correspondiente en nuestra metaclase Estoy destinado a hacer algunas modificaciones ya que se relaciona con lo que nosotros necesidad de ver. Entonces definitivamente queremos ver la codicia y la fuerza. Tailandia Nombre del estudiante. No quiero este estudiante de entrega sólo apellido. Ve. Entonces voy a tomar este viejo y voy a decir nombre de estudiante porque voy a ser un renderizado valores que son sus nombres completos. Tampoco necesito ver letras, nombre ni nada con el conferencista, ¿ verdad? No, encendido. Probablemente podamos simplemente renderizar eso una vez para que pueda quitárselo de la mesa. Deberían tener estos tres bateadores de mesa en uno en blanco puedo extraviarse acción porque tal vez quieren dedo del pie completar una acción. ¿ Te das cuenta de que esta columna está reservada para estos botones? De lo que lleguemos ahí. Entonces por cada rollo que regresa en nuestras inscripciones en voy, necesito la nota. Por lo que dejo que necesito el título del curso. Eso dejo el día. No necesito a los alumnos. Apellido. Lo que realmente necesito es el nombre completo del alumno, así que solo puedo replicar esto. ¿ Verdad? Por lo que esta es una pantalla hacia adelante en realidad renderizando cualquier valor que haya y fuera al mar. Estudiante en primer nombre sobre estudiante espacial, ese apellido. Y si quieres envolver todo esto en una etiqueta p o algo más, puedes hacerlo. Quitamos la columna, Cabeza fuera para los conferenciantes, nombre o las informaciones de la conferencia. Simplemente elimino todo esto juntos para las acciones. Bueno, yo sólo querría la habilidad dedo borrar en la inscripción, alguien que se lleve esto. Entonces si incluso necesitabas tener otros que eso está bien. Por lo que estaremos modificando esto también para asegurarnos de que cuando pudiéramos eliminar no tengamos que navegar lejos de la página simplemente realmente elimina ese registro de inscripción y refresca la cuadrícula en consecuencia. Ahora podemos ver si cambia carne o acción en otra cosa. Podemos eliminar esta causa no quiero la capacidad de crear ya en la pantalla de creación . Por lo que no necesitamos rentar un enlace para la creación. No, que hemos completado la vista. Necesitamos realmente agregar la acción para esta vista parcial en su controlador. Entonces recuerda que ninguna vista se involucra a menos que se presente una acción correspondiente. Por lo que necesitamos darle a esta acción el nombre del mismo nombre que las vistas parciales. Entiende la copia que desde la solución Explorer history share no te pierdas tipo, y la voy a colocar inmediatamente después del índice. Por lo que van a sus pocas diferencias sobre puede que lo veas hecho de esta manera. Es posible que veas a la gente hacer. Está usando resultados de acción. Es lo mismo. Por lo que hay muchas maneras de hacer esto. Te voy a mostrar con parcial el resultado porque me gusta ver lo que es una visión parcial sobre lo que es un acto sobre la energía buey están llenos de ti, incluso desde mi lado controlador. Entonces voy a decir resultados de vista parcial, señala Andi. No estoy haciendo de éste un sincrónico porque al menos en esta versión fuera de NBC, no soportan vistas parciales sincrónicas. Así que ten mucho cuidado con eso. Entonces estoy haciendo público parcial de sus resultados, dándole el mismo nombre y luego dentro de esto voy a estar regresando parcial ahora. El trabajo aún no está hecho, porque recuerda que nuestra vista parcial requiere datos que está buscando en conocí objeto Maribel , um, um, colección de tipos de objetos de inscripción. Entonces eso significa que antes de poder regresar necesito devolverlo con algunos datos. Entonces de la misma manera con índice que tiene el mismo patrón de lista. Ellos cargamos datos y luego regresamos esos datos a la vista. Tenemos que seguir un patrón similar aquí, Así que voy a ver al vire en fila Elementos. Y yo puedo hacer eso porque en romances locales a esta función, por lo que no va a interferir con que inscripciones verbales sobre. Voy a decir DVD dot en Rolling. Pero entonces sí recordemos que en nuestra vista parcial necesitamos detalles para curso, y necesitamos detalles para el alumno. Entonces sólo voy a pedir prestado esta corte aquí de Index que incluye curso basado en el registro relativo de estudiantes, y voy a seguir ese patrón aquí. Andi, carga esos en. Sé que tengo mi preocupación hecha. Voy a devolver la vista parcial con las inscripciones en. ¿ Acabo de decir a listar o siguiente elemento de acción sería agregar un parámetro a sobreacción para que el perímetro sirva el propósito off siguiéndonos para filtrar en cualquier valor en el perímetro Toma, por ejemplo, el detalles. En realidad, estamos recibe un i d on, luego comprueba si la idea es nulo shore. Pero entonces lo que realmente quiere el i d para es sólo encontrar ese disco. Por lo que necesitamos agregar un mecanismo de filtrado similar, toe nuestra acción en base a las ideas del curso, para que solo pueda agregar int en eso, hacerlo conocible. Entonces así es como lo haces infalible simplemente poniendo ese signo de interrogación, sugiere que un valor nulo es aceptable entrando. Cuando te llamen en esta acción en, vamos a ver un curso. Yo sí. Ahí es así que sabemos exactamente a qué idea se está refiriendo. Lo siguiente que queremos hacer es que empiezo a coro porque, ¿no? No, estamos trayendo de vuelta las inscripciones, todas las inscripciones. Por lo que queremos filtrar en el discurso. Yo d. Así que sólo voy a inyectar esa corte aquí, y sólo voy a romper la línea de la misma para que podamos ver exactamente lo que está pasando Así en realidad puedes hacer esto sin causar ningún error y entender decir que dot estaban en estoy agregando en un filtro. Entonces este soy yo agregando en una expresión maderera. Si mi estuviese cerca de decir estamos que atracado curso yo d es equivalente al parámetro curso idee. Por lo que hacer esto realmente hará mucho que esta vista se pueda renderizar sin ninguna idea de curso. Y, por supuesto, una consulta como esa donde esto es cero y sabemos que no tenemos caballo. I d d cero r Esto es no, en realidad, Onda, no tenemos caballo. Yo dejando no volveré en realidad con dedo vacío, arrendado o vista parcial. Entonces si quisieras que esto fuera un poco más fácil de usar, podríamos agregar en si declaración en este parcial para decir si modelo siendo nuestra lista en podemos decir que cuenta 18. El número de elementos que retroceden en esta lista es de menos de una pulgadas una función, por lo que modelo home es menor de uno. Entonces podemos ver a Brendan. Cada uno habló para decir que no hay inscripciones en este curso para que eso pueda aplicarse si recuperamos un conjunto vacío. Porque recuerda que aunque regresemos, claro, yo d. Um, si este curso no tiene inscripciones como lo entonces queremos hacerles saber que no hay actualmente ni inscripciones en este curso el. Podemos poner esto en una clase bootstrap, tal vez guión de texto, pero podemos centrar aliarlo con seguridad, y podemos ver que toma dash en cuatro. Muy bien, entonces vamos a conseguir este bonito texto azul que solías saber que no hay inscripciones en esta clase y luego podemos envolver el resto de este discurso en otra cosa para decir Esto no evalúa. Cierto. Entonces queremos imprimir todo este servicio de mesa. Eso, más letrero por debajo, se ha derrumbado todo como el calor en el que estoy pieced. Ahí vamos. Por lo que la tabla se renderiza cuando la lista no está vacía. Está bien, así que sepan que hemos probado esa teoría fueron las cargas de vista parcial solo iban a quitar esta línea porque no queremos que este dedo interfiera con nuestro auto Ajax. Entonces lo que queremos hacer es asegurarnos de que en Page Lord, o fueron seleccionados valor de o lista desplegable se renderice o se acostumbre a renderizar la vista parcial. Entonces cuando tenemos este tema, en realidad es solo llamar a la acción en blanco sin permiso er's Y así siempre vamos a conseguir que No hay inscripción porque estábamos pasando y no así puedo sólo pasar por esto son por ahora. Simplemente entraré en pláticas para mayor referencia, pero luego vamos adelante y empezamos a escribir algún trabajo. JavaScript, RJ Consulta. Se robó la escuela tan rápido y fácil. Camino a la derecha, Jake, preocúpate cuando estamos cargando una página es solo el inicio de las funciones de cantera G. Por lo que sabemos el patrón es signos de dólar abiertos y cerrar paréntesis en entonces en el abierto salida en función. Andi, solo abre y cierra todo para que podamos engañar. Todo empieza y se detiene. Y me gusta ver mi corsé rizado y mis padres se decían entre sí luego dentro de esta función, lo primero que quiero hacer es saber cuál es el curso i d. es que el valor seleccionado de este curso me caí honesto. Entonces voy a obtener este valor de este control dirigiéndolo usando su idea. Entonces signo de dólar, abrir corsé abierto. Haremos algunas artes Onda hashtag caballo I d on. Entonces voy a ver un punto Val en que realmente me pone el valor que actualmente está seleccionado en . Yo sólo voy a poner eso por dentro un divorcio muy descarado Vier. Ver idea. Esta fuerza gráficos. Está bien. Por lo pronto, la sociedad está consiguiendo el valor idee del curso actualmente seleccionado a continuación. Bueno, haciendo llamada Ajax, y va a parecer similar a esto, pero voy a poner unos parámetros y opciones diferentes en. Te explicaré a medida que voy. Por lo que empecé Egipto signo de dólar escolar punto Ajax. Yo sólo estoy llenando las otras partes en impuestos. Y luego ponemos en nuestras opciones a la primera opción es la chica. Para que yo pudiera escribir el Tú eres así, pero voy a escribirlo de una manera diferente. Sólo para que tengas exposición a todas tus opciones alguien para escribir en firmado eres de lo contrario estoy usando en cada equipo Ill ayudante función euro dot action. Muy bien, Así que ven que hay diferentes formas de abordar esto. No hay nadie que conozcamos siempre ambientado en piedra. Entonces ya ves, hay diferentes patrones en el lugar. Yo quiero mostrarte. ¿ A qué te refieres? Ver hacer una investigación? Está bien. Y entonces tenemos matrícula parcial en justo lo mismo. Estábamos en el tema de la acción con la acción y el contralor. Simplemente lo reescribiré de la misma manera. La siguiente opción que queremos es el tipo de datos. Ahora nuestra fecha que tengo esta vez no será Jesús en, sino que usaremos HTML. Por lo que tienes diferentes tipos de datos de diferentes situaciones en la situación. Estamos cargando datos HTML, así que quiero el tipo de datos dos b html on En esa nota, solo agrego contenido. Escriba en. Simplemente me siento en ese conjunto de caracteres sentado para HTML. Muy bien, entonces somos tipos de contenido de firma. Debe ser off type issue mill con charset utf se tomó. Sólo tienes que rellenar eso. Además, no creo que uno sea absolutamente necesario, pero es buena práctica. Sólo dedo del pie. Asegúrate de que el Carter el corazón que se sienta Carter estén siendo devueltos. Estableceremos el tipo que se va a conseguir. Ya que no estamos publicando datos en este momento, estamos obteniendo datos y recordamos tus comas después de cada opción a medida que avanzamos y luego tenemos datos. Entonces por supuesto, necesitamos pasar datos aquí porque nuestra acción está esperando alguna forma de datos tanto como pueda antes de dar, porque ponemos ahí un parámetro notable. Pero se espera que pasemos datos para obtener el resultado real. Por lo que necesitamos decir equino idee, Ya que ese es el nombre del parámetro está esperando en. Entonces pasaremos en nuestro valor local, que es C I d Muy bien. Entonces no le di a esto la idea del nombre caballo, porque entonces te refieres a confundirte. Si tienes curso yo d llamar a curso. Decidí esto a c i d solo decir podría ver claramente que esto es para responder en el lado izquierdo se corresponde con el departamento que se espera y del lado derecho corresponde con cualquier valor que pasaran a eso. Y luego después de los datos, tenemos éxito. Por lo que necesitamos definir una función que se llame cuando un exitoso llamado suyo hizo. Y cuando se haga una llamada exitosa, se espera que recuperemos algún tipo de datos en el formulario de esta lista. Entonces voy a decir datos sobre en esta función, vamos a poblar nuestros datos, dar con nuestros datos de pozo. Entonces realmente estamos llamando o vista parcial, y sólo vamos a ver adentro fuera de los datos en profundidad. Desea cargar esta vista parcial con estos datos. Entonces voy a poner algunas animaciones para que veamos esperanza. Horrible. Jake, preocúpate realmente lo es. Y cómo es fácil hacer una bonita aplicación interactiva. Por lo que los datos hashtag dirigidos al elemento por su i d on d Voy a decir, desvanecerse. Por lo que esto hará que en realidad se especie fuera abrigo en blanco. Y se puede reforzar eso agregando la velocidad o la derecha, Así que recuerda que sí nos desvanecimos antes. Podrían poner en la estrella lejana agua más lenta, una necesidad rápida. Pero quería desvanecerme. Y luego voy a Lord el área HTML, este contenido proveniente de Ardito. Y luego una vez cargada, quería alimentar el dedo del pie. Está bien, así que esto realmente se llamará una vez las páginas, Señor lo tan tradicionalmente con geek donde verías algo así como documento de signo de dólar que ya lo que significa o las páginas no cargadas. El tonto no está listo para interactuar con javascript. Pero entonces por un corto tiempo, simplemente puede escribirlo así. Muy bien, así que esto debería ejecutarse una vez que la página se cargue por. Entonces sólo voy a Debo rápidamente, y pongo un punto de ruptura en mi controlador para que podamos ver cuando se le llama a qué cuerpo le pasa. De acuerdo, entonces , no, vamos a asar o r crear paciente y vamos a ver como estudio visual. Es nuestro punto de ruptura, y vemos que el curso yo d efectivamente se está pasando a nuestra visión parcial sobre el resultado final fuera todo esto debería ser que las canteras corran contra el número dos I d Así que sólo esas inscripciones para volver y voila ahí. Vemos que estamos ejecutando un filtro. En base al curso seleccionado en, Sólo estamos viendo a esos estudiantes fuera de curso. No hemos hablado de nada cuando cambia este valor. Entonces esa es nuestra próxima misión. Donde cuando cambia, en realidad debería recargarse. Conoce lo que necesitamos en nuestro desplegable es un evento de cambio. Entonces, Jake, donde hace que sea igual de fácil crear el evento de cambio solo para vernos que hicimos un evento de cambio aquí de la misma manera que hicimos un evento aquí en nuestro cuadro de texto. Hicimos un auto completo. Por lo que es un patrón similar cuando queremos cambio de lista desplegable. Entonces para hacer eso sólo podemos apuntar o elementos. Por lo que sólo decimos signo de dólar. Sabemos que estamos lidiando con el curso yo d como nuestros elementos sobre. Después ponemos el evento de cambio y luego dentro del evento de cambio y solo queremos poner un punto y coma en el final al mismo tiempo tenemos una función encendida. Entonces en esta función, lo que tenemos que hacer es sacar el valor actual de las ideas fuera de curso. Por lo que en realidad podemos simplemente replicar esto donde acabamos de obtener C I. D. Sobre el valor actual on off. Peor. Una vez más, este es su propio bloque. Este es su propio bloque, por lo que el C I DS no interferirá entre sí. Muy bien, entonces necesitamos repetir toda esta cuadra fuera de cancha. Ahora hay un principio en la programación que dice's no te repitas. Es un acrónimo que deletrea de seco. Y el principio es que si tienes una cuadra fuera de cancha que puede hacer algo y se supone que uno es lo suficientemente versátil como para operar en diferentes escenarios, entonces no deberías tenerla por todo el lugar. Entonces, por no, lo voy a copiar y pegar. Pero lo que pretendemos hacer es poner este bloque fuera de bordo en su propia función. Entonces podemos llamarlo desde múltiples lugares sin tener todo fuera de esto repetido. Pero por no, sólo voy a repetirlo. Simplemente probamos que el evento sobre click funciona. Ahora, en este punto a mí quiero seguir adelante y probar? Y si lo haces, quizá te des cuenta de que no está funcionando. Y eso es porque estamos invocando. Geek estuvo aquí, pero no lo estamos poniendo dentro de un Jake. Estamos bloqueados por Jake. Estamos bloqueados. Me refiero a que esto funciona. ¿ Recuerdas eso? Dije cada vez que empezamos con G indagación, pueden ver algo así con documentos de signo de dólar ya, o ven esto, que es una taquigrafía. Entonces, sea cual sea el registro de Jiko que estás a punto de escribir, tiene que ir dentro de esa cuadra. Entonces el Ajax, el evento, todo eso necesita estar dentro de esa cuadra. Segundo, solo corta esto. Puedo iniciar otro bloque porque aquí hay un bloque para sí mismo. Este es sólo el estándar, Jake. Muy lo siento. Función Javascript. Estas son funciones de dólares. ¿ Qué es eso? Bloque de cantera J. Y este es un geek wear block alguien para poner esto dentro de aquí. Y en realidad, podrías simplemente fusionar todos estos en uno. Entonces este Jake, somos bloque de funciones realmente termina aquí. Y cualquier otro núcleo de cantera G que queramos poner. Podríamos simplemente asegurarnos de que es un tipo de auto contenido. Está bien, así que voy a poner en mi curso me d en cambio. Bloqueo de funciones activado. Es algo autónomo a cualquier otra cosa que esté dentro de esta manzana. Y yo solo alineo todo para que podamos ver donde todo empieza y se detiene. Nadie. Intentamos desacreditar esto, veremos una mejora en el comportamiento fuera de nuestra aplicación. Donde cuando cambiamos la lista desplegable las grandes recargas. Está bien. No. Con nuestra página cargada, voy a proceder a cambiar, y luego veremos qué pasa. Por lo que dejé mis puntos de descanso en la opción encendida cuando cambio el cálculo. Ya ves, llega a la subasta, y estamos recibiendo un nuevo curso I d. Así que el filtrado debería traer de vuelta sólo a las personas inscritas en cálculo sobre desafiar traer de vuelta envidia. Ver programación Donna Tordella. Creo que uno estaba vacío. Entonces vemos nuestra declaración si está funcionando sin inscripciones en este curso y podemos seguir adelante y solo asegurarnos de que todo funcione. Por lo que acabo de añadir en Ledford on inscribir estudiante en ¿Vemos que todavía tenemos uno más? Simplemente mentum it porque esto esto no se recarga. Um, si cambiamos su que acabo de quitar mis puntos de descanso aquí en cambiarlo de nuevo a la programación Java . Entonces vemos eso y dejamos para que se inscribió. Entonces lo que necesitamos dedo del pie suceda es que cuando hacemos clic en este spot en esta codicia realmente se recarga cuando se produce una inscripción exitosa. Entonces no voy a salir del modo de depuración. Yo sólo voy a ir a mi create on real y verdaderamente, solo necesito unas cuantas líneas más fuera de la cancha para cumplir con ese trabajo. No, El primer ajuste que voy a hacer es repetir es reducir la repetición que está en todo el lugar. Entonces vemos que estamos repitiendo este bloque fuera de cancha aquí que se está cargando, argumentó Andi, donde sé donde amenazó con repetirlo una vez más, Así que voy a crear una función en una vez más porque voy a estar haciendo algo que es un carrera como la disfunción necesita estar dentro de fuera o Jake o bloquear a alguien para crear una función. Muy bien, aquí. Y voy a llamarlo Señor y Rolince. Es decir, puedes crear la función y llamarla como te das cuenta, y debería recibir una parte de ella. Un parámetro llamado C I d tirano andan. Dentro de esta función, me voy a quitar todo esta cuadra fuera, cored en el lugar. Es así que tenemos nuestro it ups y otros inventan. Por lo que tenemos C i D, que se espera que se pase en cualquier momento esto se llame. Esto manejará nuestra recarga. Entonces eso significa que cuando se cargaron las páginas, simplemente reemplazamos logístico este alimento fuera de la carga de página. Por lo que necesito asegurarme de hacer una función llamada aquí primero en mi Jake preocúpate para que una vez cargadas las páginas, esto se ejecute primero y estoy pasando en C i. D, que está siendo segundo de la lista desplegable, y esa es la primera referencia al mismo en la segunda referencia al mismo estaría dentro de mi función de cambio para el caído en este solo puedo quitar todo esto y reemplazarlo por inscripciones de carga de una línea en Una vez más, tenemos el C I d. Conoce lo que realmente queremos abordar es recargar después de una edición exitosa. Entonces sólo voy a copiar estas dos líneas. Andi, si recuerdas sobre tribunal que maneja las adiciones exitosas es nuestra función agregada de éxito de la ONU . Por lo que sólo buscamos agregado en Vemos el año en que nos dieron un muerto todo bien y los resultados éxito. Entonces si tiene éxito, entonces queremos recargar. Entonces tuvimos espera por alimentar esos segundos de rejilla. Ten la cancha debajo de todo esto y en su debajo Este esquema comentado aquí solo agregamos que estamos recibiendo el curso i d. Y lo estamos pasando al teléfono que se muestra Andi Así que eso debería tener cuidado llamando al Señor inscripciones en cualquier momento que queramos sobre avaricia fuera inscripciones para refrescarse. Por lo que sigo en modo de depuración. Simplemente voy a guardar estos ajustes y luego fui toe recargar mi página. Y recuerda en la página Lord su carga Sigrid en desplegable este cambio, se carga la grilla en a la inscripción y acabo de poner en una inscripción. Por lo que eso no funcionó por unos problemas de alcance se añadieron nuestra función, que es lo que se llama a una operación exitosa desde donde la forma Ajax está fuera. Fuera de la escuela fuera de este Jake fueron bloqueados. El curioso es que si agregamos a la escuela fuera de la cuadra cuadrada, entonces la forma Ajax no podrá detectarla. Entonces eso nos pone en una posición extraña donde realmente vamos a tener que repetir la cancha , al menos por no, sólo para que esto funcione. Entonces solo reproduzco esto. Noté que el ex Sun agregó, está invocando su propio Duque o bloque. Eso es para que pudiéramos usar la consulta de la DEA aquí. Está bien, así que solo voy a ir tetas allá arriba dentro de esta función de consulta encendido. Deberíamos ver una mejora en nuestro comportamiento. Está bien. Alguien que intente agregar un estudiante también debería abrirse a ver afilado. Y ahí vemos que realmente obtenemos esa recarga y a ese estudiante se le suma tiempo real. Está bien. Y luego si tratamos de agregar de nuevo, entonces recibimos nuestro mensaje de error. Y si cambiamos. Vemos que funciona nuestro filtrado. Entonces así es como puedes ir a desarrollar una bonita forma interactiva y experiencia para tus usuarios. Andi flexibilización. Necesitan navegar entre pantallas. Entonces te voy a desafiar, dedo del pie, en realidad añadir un comportamiento similar. Toe la acción de élite. Yo lo voy a hacer y voy a revisar en la cancha para que usted tenga un referente. Pero quiero que tu dedo del pie, en realidad, intentes hacerlo en base a todo lo que has aprendido hasta. No. También notarás que navegar entre estas malas selecciones, este mensaje de error no desaparece. Entonces esas son un poco de cosas de limpieza que probablemente quieras hacer a tu página. Donde en evento de cambio, es probable que establezca esas pantallas para saber. Entonces solo voy a copiar esto rápidamente y buscar mi evento on change, que es miedo y voy a ver sobre el cambio. Yo quiero alimentar cualquier cosa que esté bajo pantalla. Entonces si hay algo en la pantalla, solo dale de comer si vuelvo a intentar eso, tendré que refrescarme solo para asegurarme de que está funcionando alguien para invocar una flecha Y entonces si me mudé a otra página, ya ves que desaparece y todo recarga por qué está bien, bien.