Bu videoda, verileri bir araya getirerek iki mongoose modeli arasında
birleşmeyi nasıl bir birleştirebildiğimizi göstereceğim ve kullanıcı ve yazı ile birlikte çalışacağız.
Dolayısıyla bu, bir kullanıcıya sahip olduğumuz ve bir kullanıcının birçok yazıya sahip olabileceği bir Facebook veya blog
uygulaması gibi olacak, ancak bir yayın bir kullanıcıya aittir ve burada yollar ve şablonlarla gerçek bir uygulama oluşturmayacağız.
Verilere ve veri modellemesine odaklanacağız.
Bu yüzden, yaptığım bu ilişkilendirme dizininde yeni bir dosya oluşturarak başlayacağım.
Bunu istediğiniz yerde yapabilirsiniz.
Tek bir dosya olacak ve bunu embed dot J. diyeceğim. S. ve bu biraz zaman alacak.
ve bunu yukarıya ve içerime açacağım, henüz yüklemediğim mongoose'a ihtiyacım olacak, bundan sonra bunu yapacağım ve PM,
mongoose'u kuracak
Oraya gidiyoruz.
Biraz yer açalım.
Ve bir kere biz bunu yapmak istediğimizde, bir veritabanına bağlanarak mongoose bağlanıyor ve bu tamamen bize
yine veritabanının adını veriyor ancak Mangu DB kolon eğik çizgi eğik çizgi yerel ana bilgisayar eğik
çizgi ve roll çağrısı yapıyor olmalı .
Bu blog demosu bunun gibi ve kaydetmek.
Tamam, şimdi kullanıcıya sahip iki model tanımlamalıyız ve bir yazı var.
Kullanıcı sadece bir e-posta ve bir isim ve bir posta gönderecek.
Bir unvana ve ardından bir içeriğe sahip olacak.
Gerçek yayın kendisi.
Dolayısıyla, şemayı tanımlamak için kullanıcının ihtiyacıyla başlayacağız.
Şimdiye kadar kullanıcı şeması yeni mongoose şemasına eşit ve sonra bunun için bir dize olan e-postanın bir
dizesi ve adı olacak.
Ve sonra şimdiye kadar modeli yaratacağız.
Kullanıcı mongoose modeli kullanıcısına eşittir.
Cingular sürümü ve daha sonra kullanıcı şeması, onu inşa ettiğimiz şey.
Ve biz onu kurtaracağız.
TAMAM.
Şimdi işimize devam edelim.
Bu nedenle, bu kez var post şeması yeni mongoose şemasına eşit başka bir şema oluşturacağız ve her yazının bir
dize ve sadece bir dize oluşturacak içerik içeren bir başlığı var.
model haline getirmeliyiz. Var post modeli mongoose dur modeli post virgül sonrası şema eşittir.
Ve sonra da bunu bir
Sağ.
Dolayısıyla, iki model oluşturan iki şemamız var.
Haydi biraz oda yapalım burada.
Dolayısıyla mesajlarımız var ve kullanıcılarımız var.
Ve sadece bunu çalıştırmayı deneyelim.
Düğüm embed Dutcher'ı başlatmak için herhangi bir sözdizimi hatası olmadığından emin olun Evet.
İyi görünüyor.
Şimdi, modelimizin çalıştığından emin olmak için gidelim ve tek bir kullanıcı oluşturalım.
Yani burada yapılan işin alt kısmında yeni bir kullanıcı
yapacağım, bu yüzden yeni kullanıcımızın yeni kullanıcıya eşit olacağına inanıyorum ve e-postayla Edu'nun etrafında Charlie olacak ve ad Charlie olacak
Brown da öyle.
Ve sonra ne kaydedip yeni bir kullanıcıyı kurtarır.
Ardından, geri aramamızı hata ile ekleyeceğiz ve ardından umarım bizim kullanıcı ve daha sonra
da siz değil, yalnızca geri gelen veriler ekleyeceğiz.
Hata, günlük hatasını iptal eder.
Başka bir deyişle, günlüğe kaydeden kullanıcıyı iptal edeceğiz.
Şimdiye dek hiçbir dernek yoktu.
Sadece kullanıcı modelinizin çalışıp çalışmadığını test ediyorum.
Dutchesse embed düğmesini çalıştıralım ve otomatik olarak oluşturulan ad ve e-posta kimliği olan
kullanıcıyı geri alalım.
Harika, postayla aynı şeyi deneyelim, böylece başka bir kullanıcı
bulamayacağız ve yeni postumuzu yeni postaya eşit olarak yapacağız ve Post'un bir başlığı var ve yazı başlığı elmalar
üzerine yansımalar olacak. ve postanın metni veya içeriği.
Sanırım adı evet içeriğimiz olacak.
Lezzetliler.
Tamam.
Harika bir blog yazısı var.
Kurtaracağız, her şeyin iyi olduğundan emin ol ve sonra bizi kurtaran yeni bir görev yapacağız
ve geri aramayı tekrar yapacağız.
Umarım bu modelle rahat edersiniz, çünkü bu çağrı geri çağırma yerini mongoose'a nereden
geçtiğini kesintisiz olarak görüyorsunuzdur.
Her zaman Monga ile tasarruf yaratmanın bulguları bulmaya çalışırken, nihayetinde bir geri aramayı
ilk parametre olarak ve daha sonra ikinci bir parametre olarak geçirmemiz
gerekir.
Tamam.
Yani, hata günlüğe girmezse, o blog postasına gelin, her ikisinin de çalıştığından emin olun.
Haydi deneyelim ve küçük bir meseleyle karşılaşıyoruz.
Yeni bir yayın yapmaya çalışırken yayının tanımlanmadığını söylüyor.
Bunun gerçekleşmesinin en mantıklı nedeni, modelimizi postadan başka bir şey olarak adlandırsaydık olurdu.
Ve ne biliyorsun.
Post model olarak adlandırdık ve biz yanlış anlamadım demek istedim.
Öyleyse görevden geçelim.
Bizi post modeli olarak saklayıp burada değiştirebilirdik.
Ama kesinlikle sadece modelin kendisinin veya bir sermayeyle olan
varlığın adının ekstra karaktere ihtiyaç duymadığı model yapmanıza gerek olmayan
yapımınızın adı olması kesinlikle konvansiyonel. P. Pekala, şimdi maç edin.
Doğru, burada yazı gönderdik ve gönderdik.
Bunu bir kez daha deneyelim ve bu sefer yeni bir yazı içeriği ekliyor.
Elmalar üzerinde lezzetli başlık yansımalarıdır.
Tamam, şimdi iki modelimizin doğru bir şekilde
çalıştığından emin olduk. Post yazabiliriz ve bir kullanıcı oluşturabiliriz.
Ancak şu anda birbirleriyle
hiçbir ilgisi yok ve kullanıcıların bir kullanıcının bir çok postaya sahip olmasını ya da sahip olmasını istediğimizi ve bir postanın bir kullanıcıya ait olacağını hatırlayacak bir ilişki kurmalarını istiyoruz.
Bu, bire bir ilişkiden çok şey.
Ve bunu gerçekleştirmek için size göstereceğim yol, bir kullanıcı şeması yerine veri katıştırmaktır.
Yani şöyle görünecek.
Sonra bir dakika içinde açıklayacağım.
Kullanıcının içinde ve Post'un özelliğinde bir yayın özelliğine sahip olacağız.
Bir sürü yazı göreceğiz ve bu işi yapmak
için bir dizinin içinde şema postasını eklememiz gerekiyor.
Dolayısıyla, yazıları bir dize,
bir sayı veya bir boolean yaparak mongoose'a bir dizi mesaj dizisi olmasını istiyoruz ve biraz şaşkın dürüstçe post şema yazmamız gerekiyor.
Keşke modelin adını postalamış olsaydı ama sadece olduğu gibi.
Şemanın adı olmalı ve başka bir konu daha var; şu anda
bunu çalıştırırsak, kemoterapi sonrası ne olduğunu bilmeyeceğiz ve bunun ikinci olarak tanımlanması nedeniyle.
Dolayısıyla, verileri yerleştirirsek, ilk önce onu tanımlamamız gerekir.
Dolayısıyla, post şemasını ve post modeli tanımlıyoruz ve ardından
kullanıcı şemasını tanımlıyoruz ve kullanıcı şemasında, bir mesaj dizisi olan posts adı verilen bir öznitelik ekliyoruz.
Dolayısıyla, yaptıysak, verilerimiz buna benzer gibi görünecek veya bir kullanıcı için
bir e-posta atalım ve bir jibberish'e bir isim yapacağız ve sonra da bir yazı dizisi yayınlayacağız.
var ve bir kullanıcı bunun gibi bir çok yazıya sahip olabilir.
Ve bu dizinin içinde birden fazla yazı var, böylece her yazının bir başlığı ve içeriği
Ve aldığımız her yayın için
belirli bir kullanıcı üzerindeki posts özelliği yerine yeni bir yayın olacaktır.
O halde gidelim.
Şimdi bir kullanıcı oluşturalım ve o kullanıcıya nasıl bir yazı ekleyebildiğimizi göstereceğim, böylece yalnızca Google Haritalar'ı kullanabiliriz.
Charlie Brown burada.
Yeni Kullanıcı Charlie Brown'a eşit.
Her ne kadar bazı e-postaları ve isimleri değiştireceğim çünkü zaten Charlie Brown veritabanında bulunuyor.
Hogwarts edu'mda benimkiler var.
Sonra bunu Granger teyzem olarak değiştireceğiz.
Tamam.
Dolayısıyla, yeni bir kullanıcı sahibiyiz ve o kullanıcıya bir yayın eklemek için elimizden geleni yapıyoruz.
Tek yapmaları gereken, bir dizi olduğu için iten yeni kullanıcı yayınları yazmak.
Ve yeni bir yazı gönderiyorum ve Post'un bir unvanı var ve bir
sonraki yazının başlığı, poli meyve suyu iksiri nasıl hazırlanacağı ve daha sonra içeriği sadece şaka yapıyor olacak.
İpleri sınıfta öğrenmek olağanüstüydü.
Her ne önemi yoksa.
Dolayısıyla bir
başlık ve bazı içerik var ve daha sonra bu yazıyı burada tanımladığımız yeni kullanıcıya aktaracağız.
Ve son yapmamız gereken şey yeni kullanıcı kaydetmek.
Öyleyse böyle kaydeden yeni bir kullanıcı.
Ve biz aslında bunu zaten yazdık
ki, bunu sadece yeniden kullanıp uncomment edeceğiz ve bu onu kurtarmayı deneyecek.
Bir hata varsa bize bildirir.
Aksi halde bize kullanıcı gösterecek
ve daha sonra tüm bu yazıları yazılarda yorumlayacak ve sadece kaydedecek ve neler olacağını görelim.
Dolayısıyla tanımladığınız post şemamız var, o
zaman kullanıcı şemamız var ve yeni bölüm burada, kullanıcı içinde bir dizi mesajımız var.
Ve sonra yeni bir kullanıcı oluşturuyor ve doğru yazıya itiliyoruz.
Bir şans verelim.
TAMAM.
var.
Ve biz yazdığım bu kullanıcıyı geri alıyoruz. Hogwarts'ta hatırlatan e-postaların adı Hermione Granger'dır ve mesajlar yerine yeni bir mesajımız
Bu da işe yarıyor.
Şimdi, tüm bunları yorumlayacağım başka
bir şey deneyelim ve yeni bir kullanıcı yaratmak yerine mevcut kullanıcıyı geri alalım.
Bu yüzden madenciliğini geri alacağım.
Bu yüzden kullanıcı find ile yapacağım.
Ve ben bir tane bulacağım.
Yoksa find bana bir dizi verecek ve sadece bir şey geri istiyorum.
Dolayısıyla sizi yapacağız, birinin Hermione Granger olduğunu bulamayacağını
bulamadık ve sonra standart geri arama hatamızı yapacağız ve biz sadece bu kullanıcıyı arayacağız.
Umarım şu an rahat etmişsindir.
Burada, Mongoose ile her
şeyi yaptığımızda yazdığımız geri arama, sonra da bunu yapacağız.
Eğer şimdiye
kadar danışma hatası
yaparsanız ve Aksi halde kullanıcıyı sürekli özleyeceğim ve her harekâttan kurtulmam gereken ekstra bir ayraç var.
Yani bu sadece onu yeni sırtımda yeni bulmak için.
Yeni bir kullanıcı buluyoruz ve işe yarıyor.
Kullanıcının geri gelmesini sağlayacağız.
Onun adı, parasını Hogwarts'a e-postayla gönderdiği aklındadır.
Tamam, şimdi başka bir yazı eklemek istediğimi varsayalım, çünkü bu bir çok kişiye denk geliyor.
Dolayısıyla bir kullanıcı birden fazla yayına sahip olabilir.
Şimdi yapalım.
ve başlık üç şeydir.
Yani bir kere başka kullanıcıyı buluruz Yeni bir yazı eklemek için bazı kodları çalıştırırız ve daha sonra bu
kullanıcı mesajı yukarıdaki gibi sıkıştırır ve bu kez baska bir yazıyı içeri iter böylece basarız başlıkta
Gerçekten nefret ediyorum ve içerik daha da artacak.
Ve Voldemort.
Pekâlâ, orada çok yaratıcı mesaj hatırlatıyor, biz de önümüze gidip bunu kurtaracağız.
Dolayısıyla kullanıcı kaydetme işlemini yapmamız gerekiyor ve daha sonra geri aramamızı ekleyeceğiz.
Bu hatanın bir diğeri.
Ve biz sadece bu kullanıcıyı tekrar arayacağız.
Ve bunun yerine, hata konsolu günlük hatasını aksi halde yapacak, aksi halde günlük kullanıcıyı iptal edecektir.
Pekala, bazı insanlar geri arama olarak adlandırıyorlardı.
Burada bir sürü geri arama var.
Bu ilk sahibiz ki,
bulduğumuz kullanıcı bulma fikrini buluyor ve sonra yeni bir yazı gönderiyoruz.
Ancak bu aslında veritabanına eklemez.
O zaman onu kurtarmak zorundayız.
Ve böylece kullanıcı kaydetmek ve bu kullanıcı burada.
Bu ikisi, ilk kez zihnini bulduğumuzda geri gelen kullanıcıya
atıfta bulunuyor ve daha sonra tasarruf ediyoruz ve daha sonra bu kullanıcı kaydettikten sonra gelenleri belirtiyor.
Dolayısıyla bu kullanıcı burada yeni yayını ekledi ve veritabanına kaydetti.
Mongo'dan bize geri dönen verilerden sonra çıktısını alıyoruz.
Şimdi deneyelim.
Bu yüzden ilk sayım dosyası günlüğünden kurtulmama izin verin.
Sadece öyle bırak.
çalıştırmamıza özen gösterelim.
Kütüklerle ilgili hesaplarımıza müdahale edecek başka bir kod
Hadi başlayalım.
Tamam.
Dolayısıyla şu anda
gördüğümüz şu ki, ilk yayın olarak iki ileti, ikinci ileti olan tek bir kullanıcı olan Hermione'yi tek bir kullanıcıya yazdık ve ikisi de tek bir kullanıcı üzerindeki posta özniteliğinin içinde saklanmaktadır.
Yani bir kişiden çok kişiye.
TAMAM.
Göstermek istediğim tek şey bu kadar.
Şimdi bunu kısaca gözden geçelim.
Dolayısıyla Mongoose'da oturarak başladık ve iki modelimiz var ve bunların başında bağımsızlardı.
Sonra bunları, kullanıcı şemasına post şema dizisi ekleyerek ilişkilendik.
Dolayısıyla bir kullanıcının mesaj dizisi var ve boşa başlıyor.
Ancak daha sonra, nokta vuruşunu basarak ekledik
ve nesne göndermeleri denilen şey kullanılarak veri ilişkilendirmenin başka bir yolunu gösterecek bir sonraki videoda kaydettik.