Nou kom terug in deze video ga je laten zien hoe we kunnen het opzetten van een vereniging een één op veel relatie tussen twee mangoest modellen door het inbedden van data en we gaan om samen te werken met de gebruiker en post.
Dus dit zal zijn als een Facebook of blog app waar we een gebruiker en een gebruiker kan veel berichten, maar een post behoort tot een gebruiker en we zijn niet van plan om het creëren van een echte app hier met routes en sjablonen.
We gaan gewoon richten op de gegevens en de gegevens modelleren.
Dus ik ga aan de slag met het maken van een nieuw bestand binnenkant van deze verenigingen map die ik heb gemaakt.
U kunt dit doen waar u maar wilt.
Het gaat om een ​​enkel bestand te zijn en ik noem het insluiten dot J.S. en ik zal openen dat tot en de binnenkant van hier zal ik mangoest die ik niet hebt geïnstalleerd vereisen nog dus ik zal dat volgende en PM installeren mangoest doen en dat zal even duren.
Daar gaan we.
Laten we wat ruimte.
En zodra we nodig hebben het volgende wat we willen doen is te verbinden met een database, zodat mangoest betekent verbinden en dit is helemaal aan ons opnieuw de naam van de database, maar het moet Mangu DB colon slash slash lokale host slash and roll call .
Deze blog demo net als dat en op te slaan.
OK dus nu moeten we twee modellen hebben we de gebruiker te definiëren en we hebben een bericht.
De gebruiker zal alleen maar een e-mail en een naam en een bericht.
Het gaat om een ​​titel en vervolgens een inhoud hebben.
De werkelijke paal zelf.
Dus we beginnen met de gebruiker nodig om het schema te definiëren.
Tot nu toe gebruiker schema is gelijk aan nieuwe mangoest schema en dan gaan we e-mail die is een string en de naam die is een string net als dat hebben.
En dan zullen we het model tot nu toe te maken.
Gebruiker is gelijk aan mangoest model gebruiker.
De Cingular versie en vervolgens de gebruiker schema is wat wij het bouwen van.
En dat bewaren we.
OK.
Laten we nu overgaan tot de post.
Dus we gaan naar een ander schema ditmaal var bericht schema is gelijk aan nieuwe mangoest schema en vervolgens elk bericht heeft een titel die is een string en inhoud die slechts een string zal ook te maken.
En dan moeten we ook om te zetten dat in een model var paal model is gelijk aan mangoest stop model na de komma na schema.
Rechts.
Dus hebben we twee schema opgezet twee modellen.
Laten we een beetje van de kamer hier.
Dus hebben we onze berichten en we hebben onze gebruikers.
En laten we gewoon proberen het uitvoeren van deze.
Zorg ervoor dat we geen fouten in de syntaxis aan knooppunt te starten insluiten Dutcher Ja.
Ziet er goed uit.
Laten we nu gaan en het creëren van een enkele gebruiker alleen maar om ervoor te zorgen dat ons model werkt.
Dus helemaal onderaan gedaan hier ga ik een nieuwe gebruiker te maken, zodat we noemen het onze nieuwe gebruiker is gelijk aan nieuwe gebruiker en dan zullen we een e-mail passeren en e-mail Charlie zijn rond Edu en de naam van Charlie zijn Brown net als dat.
En wat scheelt een nieuwe gebruiker op te slaan.
En dan zullen we aan onze callback met de fout en de gegevens vervolgens terug te komen die hopelijk onze gebruikers en dan niet alleen jij.
Als de fout annuleert log fout.
Anders gaan we dat log gebruiker annuleren.
Tot nu toe geen associaties.
Ik ben gewoon het testen om te zien of onze gebruiker model werkt.
Dus laten we lopen dit knooppunt insluiten Dutchesse en wij krijgen onze gebruiker terug met de ID die automatisch werd gegenereerd naam en e-mail.
Grote laten we proberen hetzelfde met post zodat commentaar dat uit zodat we niet een andere gebruiker te krijgen en we gaan doen onze nieuwe post is gelijk aan nieuwe post en een Post heeft een titel en de titel van de post zal zijn bespiegelingen over appels en de tekst van die post of de inhoud.
Ik denk dat we noemden het ja-inhoud zal zijn.
Ze zijn verrukkelijk.
Okee.
Grote blog post daar.
We zullen sparen ervoor zorgen dat alles is goed en dan gaan we een nieuwe post die ons te redden en de callback weer eigenlijk doen nu.
Hopelijk je krijgt comfortabel met dit patroon omdat je het zien van het non-stop, waar passeren deze oproep callback te mangoest.
Elke keer dat we iets te doen met Monga is het vinden van het creëren van besparing updating uiteindelijk verwijderen uiteindelijk moeten we passeren een callback met de fout als de eerste parameter en vervolgens de gegevens als de tweede.
Okee.
Dus als fout annuleert log ooit anders is gekomen om die blog post ervoor te zorgen dat beide werk.
Laten we het proberen en we lopen in een klein probleem.
Het is ons te vertellen dat bericht niet is gedefinieerd wanneer we proberen om een ​​nieuw bericht te maken.
En de meest logische reden voor dat dat gebeurt zou zijn als we ons model iets anders dan de post genoemd.
En wat weet je.
We noemden het bericht model en we bedoel ik dat ik noemde het verkeerd.
Dus laten we gaan met post.
We kunnen het hebben gehouden als post-model en toen veranderde het hier.
Maar het is zeker gebruikelijk om het te hebben alleen de naam van wat je maakt je niet hoeft te model daar u geen extra tekens hoeft alleen maar de naam van het model zelf of van de entiteit post met een hoofdletter te hebben P ..
Oké dus dat past nu.
Rechts hebben we post en post hier.
Laten we proberen dit opnieuw en deze keer voegt een nieuwe functie-inhoud.
Ze zijn heerlijk titel reflecties op appels.
OK nu dat we ervoor hebben gemaakt dat onze twee modellen goed werken kunnen we een post te maken en kunnen we een gebruiker te maken.
Maar op dit moment hebben ze niets te maken met elkaar en we willen dat ze een relatie hebben niet vergeten dat we willen een gebruiker of moeten bezitten vele posten en een post zal behoren tot één gebruiker.
Dus dat is een een tot veel relatie.
En de manier waarop ik ga om te laten zien om dat te bereiken is door het inbedden van gegevens in plaats van een gebruiker schema.
Dus het gaat er zo uitzien.
Dan zal ik het in slechts een moment uit te leggen.
We gaan attribuut een post hebben in de gebruiker en de binnenkant van de Post attribuut.
We gaan een heleboel berichten te hebben en dat werk dat we nodig hebben om de post schema binnenkant van een array toe te voegen maken.
Dus in plaats van het maken van berichten een string of een nummer of een boolean we mangoest vertellen we willen dat het een lijst te zijn een reeks van berichten en we moeten na schema dat is een beetje verwarrend eerlijk te schrijven.
Ik zou willen dat het was gewoon post de naam van het model, maar het is gewoon de manier waarop het is.
Het moet de naam van het schema en we hebben een ander probleem en dat is dat als we dit recht draaien nu het gaat niet om te weten wat post-chemo is en dat is omdat we het tweede definieert.
Dus als we het inbedden van de gegevens die moeten we het eerst definiëren.
Dus we bepalen de post schema en de post-model en dan definiëren we de gebruiker schema en de binnenkant van de gebruiker schema voegen we een attribuut genaamd berichten dat is een serie van berichten.
Dus als we dat doen onze data zoiets als dit zal kijken of we een naam van een gebruiker laten we het doen van e-mail en ik zal gewoon jibberish een naam en dan zullen we ook berichten posten en een array.
En binnen die reeks hebben we meerdere berichten zodat elk bericht heeft een titel en inhoud en een gebruiker kan veel berichten, net als dat hebben.
En dus voor elke post die we krijgen het zal een nieuwe post te zijn in plaats van de berichten toe te schrijven aan een bepaalde gebruiker.
Dus laten we dat maar.
Laten we een gebruiker en dan zal ik je laten zien hoe we een post voor die gebruiker kan toevoegen, zodat we kunnen gewoon gebruik maken van onze.
Charlie Brown hier.
Nieuwe gebruiker gelijk aan Charlie Brown.
Hoewel ik een aantal van de e-mails en de namen te veranderen, want we hebben al Charlie Brown in de database.
Laten we gaan met zijn mijn enige op Zweinstein edu.
En dan zullen we dit veranderen aan mijn tante Granger zijn.
Okee.
Dus hebben we een nieuwe gebruiker en vervolgens naar een post die gebruiker toe te voegen.
Het enige wat ze hoeft te doen is te schrijven nieuwe gebruiker berichten dat duwen, want het is een array.
En ik duw in een nieuwe post en een Post heeft een titel en de titel van mijn volgende post zal zijn hoe poly sap toverdrank brouwen en dan de inhoud zal zijn maar een grapje.
De klasse potions om het te leren goed.
Wat het maakt eigenlijk niet uit.
Dus we hebben een titel en een deel van de inhoud en dan gaan we deze post in nieuwe gebruiker die we gedefinieerd hier duwen.
En het laatste wat we moeten doen is, behalve nieuwe gebruiker.
Dus een nieuwe gebruiker die op te slaan als dat.
En we eigenlijk al deze schriftelijke dus ik zal gewoon opnieuw dat en uncomment dat en dit zal proberen en opslaan.
Als er een fout zal het ons laten weten.
Anders zal het ons de gebruiker en dan commentaar al deze spullen naar beneden hier over berichten en net behalve dat en laten we zien wat er gebeurt.
Dus hebben we onze post schema die u vervolgens gedefinieerd hebben wij de gebruiker schema en het nieuwe deel is hier waar we een reeks van berichten binnen van de gebruiker.
En dan zijn we het creëren van een nieuwe gebruiker en duwen in die post recht.
Laten we geven het een schot.
OK.
En we terug deze gebruiker dat we hier het afdrukken van e-mails herinneren op Zweinstein naam het is Hermelien Griffel en dan in plaats van het berichten hebben we een nieuwe post.
Dus dat werkt prima.
Laten we nu eens iets anders proberen waar ik ga al dit uit opmerkingen te maken en in plaats van het creëren van een nieuwe gebruiker laten ophalen van de bestaande gebruiker.
Dus ik ga haar mijnbouw te halen.
Dus ik zal dat doen met de gebruiker te vinden.
En ik ga voor het gebruik van een vinden.
Anders vind zal me een array te geven en ik wil gewoon een ding terug.
Dus we gaan doen je niet vinden zal men zien waar de naam is Hermelien Griffel en dan zullen we onze standaard callback fout doen en we zullen gewoon noemen deze gebruiker.
Hopelijk je krijgt comfortabel met dat recht nu.
Dit recht hier de callback dat we schrijven vrijwel elke keer dat we iets met Mongoose doen en dan gaan we gewoon doen.
Als er ooit dialoogvenster raad fout en dan Anders zullen we voortdurend bug gebruiker en ik heb een extra bracket ik nodig om zich te ontdoen van elke gaan.
Dus dit is gewoon om haar mijn nieuwe back niets nieuws te vinden.
We zijn gewoon het vinden van een nieuwe gebruiker en het werkt.
We krijgen de gebruiker terug te komen.
Haar naam is haar geest dat ze e-mails haar geld op Zweinstein.
OK nu laten we veronderstellen Ik wil een andere functie toe te voegen, want dit is dan ook één voor velen.
Dus een gebruiker kan meerdere berichten te hebben.
Laten we dat nu doen.
Dus binnenkant van de anders als we vindt de gebruiksvriendelijkheid We gaan een stukje code toe te voegen in een nieuwe post lopen en dan dat eruit ziet als deze gebruiker berichten omhoog te duwen net als voorheen en deze keer zal duwen in een andere post dus we zullen duwen in de titel en de titel is drie dingen.
Ik heb echt een hekel aan en de inhoud zal des te meer des te meer zijn.
En Voldemort.
Oké erg creatief bericht daar herinneren me en we zullen doorgaan en bewaar deze.
Dus we moeten nog wel een gebruiker op te slaan en dan zullen we na afloop aan onze callback.
Nog een van deze fout.
En we zullen gewoon opnieuw te bellen deze gebruiker.
En in plaats van hier te zullen doen als error console log error anders teniet log gebruiker.
Oke dus dit is wat sommige mensen terugbellen zouden noemen.
Hell we hebben veel callbacks hier.
We hebben dit eerste is het vinden van haar geest het vinden van die gebruiker die we krijgen en dan zijn we duwen in een nieuwe post.
Maar dat betekent niet daadwerkelijk toe te voegen aan de database.
We moeten dan het op te slaan.
En dus we hoeven gebruiker op te slaan en deze gebruiker hier.
Deze twee verwijzen naar de gebruiker die terugkomt wanneer we haar geest het de eerste keer en dan zijn we het opslaan en vervolgens deze gebruiker verwijst naar wat terug van de op te slaan komt.
Dus deze gebruiker hier heeft nu de nieuwe post aan toegevoegd en op te slaan in de database.
Het is de gegevens die bij ons terug komt van Mongo en dan zijn wij het printen.
Laten we het nu proberen.
Dus laat me te ontdoen van deze eerste tegenlist log.
Laat het gewoon zo.
Laten we duidelijk ervoor zorgen dat we hebben geen andere code die dat gaat bemoeien met onze accounts over logs.
Laten we lopen het.
Okee.
Dus wat we zien, is dat we nu het afdrukken van een enkele gebruiker Hermelien die twee posten als eerste en de tweede heeft en ze zijn allebei opgeslagen binnenkant van de paal attribuut op de single user.
Dus het is een te veel.
OK.
Dus dat is alles wat ik wil laten zien.
Laten we nadenken zojuist dit kort.
Dus begonnen we bij zitten bij Mongoose en we hebben twee modellen en ze waren onafhankelijk te beginnen.
En dan bijbehorende we ze door de toevoeging van deze post schema array om de gebruiker schema.
Dus nu een gebruiker heeft een scala aan berichten en het begint leeg.
Maar dan voegden we om het door te drukken in post dot duwen en vervolgens opgeslagen we in de volgende video zal je laten zien op een andere manier te associëren gegevens met behulp van de zogenaamde object gevonden.