1
00:00:00,210 --> 00:00:01,470
Tekrar hoşgeldiniz.

2
00:00:01,650 --> 00:00:07,830
Şimdiye kadar, bahsettiğim gibi şeyleri öğretmek, test etmek ve hata ayıklamak için güzel olan Mongo

3
00:00:07,830 --> 00:00:12,510
konsolunu kullanarak Mongo TV ile nasıl etkileşimde bulunduğumuzu gördük. Ancak, burada

4
00:00:12,720 --> 00:00:17,250
anlattığımız gibi, etkileşim içindeki kodumuzun büyük kısmını yazacağız. Veritabanımızda aslında ifade

5
00:00:17,250 --> 00:00:18,660
kodumuz yerine bunu yapacağız.

6
00:00:18,780 --> 00:00:23,290
Öyleyse bir örnek verelim, Yelp kampına gidelim ve sadece ona bir göz atalım.

7
00:00:23,340 --> 00:00:24,110
Evet.

8
00:00:24,750 --> 00:00:27,720
Burada mangu'u nereden kullanacağımızın bir örneği.

9
00:00:27,930 --> 00:00:35,340
Örneğin, burada bir diziye kamp eklemeden ziyade dizimize yeni bir kamp eklediğimizde bir veritabanı olan

10
00:00:35,340 --> 00:00:40,430
bir mongo veritabanı ve kamp olarak adlandırılan bir koleksiyon olurdu.

11
00:00:40,530 --> 00:00:43,530
Ve bu seride gerçekten çok yakında başlıyor.

12
00:00:43,530 --> 00:00:48,570
Ve sonra, kampanyayı kampa indirgemek için bir

13
00:00:48,570 --> 00:00:57,870
gönderme talebi gönderirken, burada tanımlanan dizi kamplarıyla kampları oluşturmak yerine, kesilmiş kamp alanlarında

14
00:00:57,870 --> 00:01:03,620
da Mongar DP koleksiyonuna ekleyeceğimiz bir diziye bastıracağız.

15
00:01:03,690 --> 00:01:11,430
Aslında bir D-B kampı bulup bulup sonuçlarını alıp kamp

16
00:01:11,430 --> 00:01:12,990
şablonuna göndereceğiz.

17
00:01:13,550 --> 00:01:13,850
TAMAM.

18
00:01:13,860 --> 00:01:15,150
Böylece oraya gideceğiz.

19
00:01:15,450 --> 00:01:17,170
Bu yüzden bu derste odaklanıyoruz.

20
00:01:17,340 --> 00:01:21,000
Bunu yapmak için mongoose adı verilen bir araç hakkında bilgi edineceğiz.

21
00:01:21,120 --> 00:01:26,060
Bu yüzden, üç ana hedefim var, size neden kullandığımızı açıklayan mongooses'ları anlatıyor.

22
00:01:26,370 --> 00:01:30,000
Ayrıca bir javascript dosyası yerine nasıl kullanılacağını göstermek istiyorum.

23
00:01:30,000 --> 00:01:32,450
Mongoose'un ne hakkında konuşarak başlayalım.

24
00:01:32,730 --> 00:01:34,790
Bu yüzden resmi ana sayfayı açtım.

25
00:01:34,920 --> 00:01:39,830
Mongoose'un hiçbir dahi için zarif bir Mongo DB nesne modellendiğini söylüyor.

26
00:01:40,120 --> 00:01:40,700
TAMAM.

27
00:01:41,220 --> 00:01:42,750
Biraz daha okuyalım.

28
00:01:42,990 --> 00:01:47,610
Mongoose, uygulama verilerinizi modellemek için basit bir şema tabanlı çözüm sunar.

29
00:01:47,720 --> 00:01:52,740
Dahili typecasting doğrulama kraliçesi bina iş mantığı coax ve kutudan daha

30
00:01:52,740 --> 00:01:53,480
fazlasını içerir.

31
00:01:53,550 --> 00:01:56,690
Dolayısıyla, deneyimli bir geliştiriciye daha mantıklı olacağını düşünüyorum.

32
00:01:56,790 --> 00:01:59,910
Ancak gerçek anlamı Mongoose'un bir araç olmasıdır.

33
00:02:00,090 --> 00:02:05,970
NPM ile indirilecek olan ve javascript dosyalarımız yerine Mongo D-B ile etkileşim kurmamıza

34
00:02:05,970 --> 00:02:07,550
yardımcı olan bir paket.

35
00:02:07,650 --> 00:02:09,750
Mongoose olmadan yapmak mümkündür.

36
00:02:09,750 --> 00:02:14,280
Bunun gibi başka araçlar da vardı ancak Jay Querrey'nin Dom ile etkileşim

37
00:02:14,520 --> 00:02:19,080
kurmamızı kolaylaştırdığı gibi veritabanıyla etkileşim kurmamızı kolaylaştırıyor ancak bir sorguya sahip olmamız gerekiyor.

38
00:02:19,530 --> 00:02:25,020
Mongoose, monkhood DB veritabanıyla etkileşim kurmamızı daha kolay ve daha temiz yapıyor ancak gerekli değildir.

39
00:02:25,860 --> 00:02:30,860
Şimdi bulut 9 bulacaksınız ve ilerleyip tek bir javascript dosyası hazırlayacağım.

40
00:02:31,020 --> 00:02:36,570
dosya olacak ve dosyayı çalıştırdığımızda mongoose kullanarak veritabanına bir şeyler eklemek istiyorum.

41
00:02:36,790 --> 00:02:42,640
Hızlı bir uygulama olmayacak, sadece Evet'den sonra düğüm düğümüyle çalıştırdığım tek bir

42
00:02:43,050 --> 00:02:44,110
Bu yüzden başlayacağım.

43
00:02:44,110 --> 00:02:48,620
Verdiğim bir dizinin içindeyim ve bir dosya yapacağım.

44
00:02:48,750 --> 00:02:50,900
Ve ona sadece kedi diyelim.

45
00:02:51,080 --> 00:02:54,160
Evet çok fazla köpek uğraşıyordum.

46
00:02:54,210 --> 00:02:55,440
Şikayet alacağımı biliyorum.

47
00:02:55,530 --> 00:02:59,840
Bazı kedileri o kadar iyi ciddiye almaya çalışmak ve daha sonra içinde yapmak.

48
00:02:59,910 --> 00:03:00,660
yükleyeceğim.

49
00:03:03,600 --> 00:03:10,100
Açalım ve başka bir şey yapmadan önce bir paket olan mongoose'u

50
00:03:11,270 --> 00:03:18,190
Orada gidelim ve biraz oda yapalım ve sonraki yapmak istediğimiz şey,

51
00:03:18,190 --> 00:03:28,260
mongoose'u yapacak olan mongoose'tan mongoose'a ihtiyaç duyulmasını ve ilk önce ne yapacağımızın veritabanına yeni bir kedi

52
00:03:28,560 --> 00:03:37,650
eklemeye odaklanmasını gerektiriyor. Daha sonra veritabanından tüm kedileri alacağız ve her biri bu şekilde günlüğe

53
00:03:37,650 --> 00:03:39,960
yazan basit bir konsol

54
00:03:42,810 --> 00:03:43,790
yapacağız.

55
00:03:44,100 --> 00:03:47,950
Tamam, böylece veritabanına nasıl yeni bir kedi eklediğimizi bulmaya başlayacağız.

56
00:03:48,090 --> 00:03:52,630
daha kurulum var, bir veritabanına bağlanmamız gereken Mongoose ile yapmamız gerekiyor.

57
00:03:52,690 --> 00:03:54,780
Ve bunu yapmadan önce, biraz

58
00:03:54,990 --> 00:03:58,440
Bu yüzden, bunu arka planda koştuğumuzu hatırlayın.

59
00:03:58,440 --> 00:04:00,390
Bu bizim Mongo temsilcimiz.

60
00:04:00,570 --> 00:04:01,590
Koşmayı sürdüreceğiz.

61
00:04:01,620 --> 00:04:07,350
Bu nedenle eğer bir nedenden dolayı kapattıysanız, onu Man-God komutuyla tekrar

62
00:04:07,350 --> 00:04:12,180
açtığınızdan emin olun ve sonra, çalıştırdığımız bu sunucuya bağlanmak

63
00:04:12,180 --> 00:04:23,820
için mongoose'a söyleyeceğiz ve bu mongoose'un bağlantı kurduğu ve daha sonra Bu Mongo DB kolon eğik çizgi çizgi yerelhost eğik çizgisine benzeyen

64
00:04:24,990 --> 00:04:25,620
bir URL.

65
00:04:25,770 --> 00:04:27,740
Ve sonra herneyse gelecek istiyoruz.

66
00:04:27,780 --> 00:04:29,490
Bu veritabanımızın adıdır.

67
00:04:29,700 --> 00:04:37,380
Ve daha önce olduğu gibi veritabanım yoksa, cat uygulamasını çağıralım Henüz bir kedi

68
00:04:37,380 --> 00:04:38,870
uygulaması veritabanımız yok.

69
00:04:39,240 --> 00:04:45,450
Ve ben bunu çalıştırırsam bağlanacak ve kedi uygulaması bulmaya çalışacak ve bulamayacak ve benim için

70
00:04:45,450 --> 00:04:46,650
kedi uygulaması yapacak.

71
00:04:46,650 --> 00:04:51,210
Ancak bir tane varsa ve bulursa mevcut kedi uygulamasını kullanır.

72
00:04:51,390 --> 00:04:52,660
Bu yüzden sadece cat app ile gidersiniz.

73
00:04:52,800 --> 00:04:54,000
Bana uyar.

74
00:04:54,600 --> 00:05:00,660
Ve bu şimdi veritabanımıza bağlanacak ve biz sadece dosya düğüm kedi kedilerimizi çalıştıran bu

75
00:05:00,780 --> 00:05:01,550
testi deneyebiliriz.

76
00:05:01,680 --> 00:05:03,210
Evet.

77
00:05:03,210 --> 00:05:05,720
Her şey iyi bir sonuç anlamına gelen bir hata alamıyoruz.

78
00:05:05,760 --> 00:05:07,420
Böylece C'yi kontrol edebiliriz.

79
00:05:07,680 --> 00:05:11,180
Ve şimdi yapmak istediğimiz, veritabanına bir kedi eklemek üzerine yoğunlaşmak.

80
00:05:11,430 --> 00:05:15,930
Ve bunu yapmadan önce aslında bir kedinin neye benzediğini tanımlamamız gerekiyor.

81
00:05:16,020 --> 00:05:20,160
Bu yüzden burada yapacağım ve biraz yeni sözdizimi göreceksin.

82
00:05:20,220 --> 00:05:24,540
Daha önce hiç görmediğiniz Mongoose'la birlikte gelen yeni yöntemler bir demet ve

83
00:05:24,540 --> 00:05:27,370
söz veriyorum hepsini anlatacağım ama sadece yazarak başlayacağım.

84
00:05:27,390 --> 00:05:37,980
Bu nedenle, kedi şemamızı yeni bir mongoose nokta şemasına, bir nesneyi içine soktuğumuz bir sermaye kaybına eşit olarak tanımlıyoruz ve

85
00:05:37,980 --> 00:05:48,770
daha sonra nesne içinde bir kedinin bir dizesi olduğu bir sayı, bir yaş olan bir sayı olduğunu söyleyeceğiz ve bunu yapabiliriz

86
00:05:48,770 --> 00:05:56,130
Üzüm her ne kadar pek çok kedi ırkını tanımadığımı fark etsem de, öfkeyi değiştireceğim

87
00:05:56,130 --> 00:06:00,360
diye büyü yapmak gerçekten zor bir sözcük demekti.

88
00:06:00,390 --> 00:06:01,220
Bunu hep unutuyorum.

89
00:06:01,240 --> 00:06:03,140
Bir sanırım doğru buldu.

90
00:06:03,150 --> 00:06:06,150
Böylece mizaç yapacak ve bu da bir ip olacak.

91
00:06:06,560 --> 00:06:06,930
TAMAM.

92
00:06:06,930 --> 00:06:07,930
Ve biz de kurtaracağız.

93
00:06:08,280 --> 00:06:10,680
Ve bu aslında veritabanımıza hiçbir şey yapmaz.

94
00:06:10,680 --> 00:06:13,110
Sadece mongoose veya javascript söyler.

95
00:06:13,230 --> 00:06:18,750
Eşyanın javascript tarafında, veritabanımıza kediler ekleyebilmek istediğini ve bir kedi

96
00:06:18,750 --> 00:06:23,250
bunun kendiniz değil mi diye sorduğunuz gibi tanımlanmasını söyler.

97
00:06:23,250 --> 00:06:23,900
Yok hayır.

98
00:06:23,900 --> 00:06:25,200
Soru iyi ilişkisiz.

99
00:06:25,200 --> 00:06:28,190
Bu, tablo tanımlamak zorunda olmadığım anlamına gelmez mi?

100
00:06:28,530 --> 00:06:29,600
Evet bu doğru.

101
00:06:29,610 --> 00:06:31,210
Bu bir tablo tanımlamak değil.

102
00:06:31,350 --> 00:06:36,060
Bu, verilerimiz için bir kalıp tanımlamaktadır, ancak bu, yeni şeyler ekleyerek veya belirli

103
00:06:36,180 --> 00:06:38,310
şeyleri bırakmamızın yasak olduğu anlamına gelmez.

104
00:06:38,310 --> 00:06:42,930
işleyebilecek bir kod yazmak için öngörülebilir bir yapıya ihtiyacımız vardır.

105
00:06:42,930 --> 00:06:46,440
Yapıyı sağlamanın güzel bir yoludur, çünkü bu kedileri

106
00:06:46,650 --> 00:06:50,590
Diyelim ki, isim yaşı ve mizaç yazdırmak için bir şablon istiyoruz.

107
00:06:50,670 --> 00:06:54,050
Her kedinin yaş ve mizaç adını taşıdığından emin olmalıyız.

108
00:06:54,270 --> 00:06:57,540
Ve eğer o değilse, bunu tahmin edebilmeliyiz.

109
00:06:57,570 --> 00:06:59,690
Şemayı böyle tanımlıyoruz.

110
00:06:59,710 --> 00:07:01,630
Ama biz yapmak için bir şey daha çözdük.

111
00:07:01,740 --> 00:07:05,910
Ve deneyimime göre bu sonraki satır biraz kafa karıştırıcı.

112
00:07:06,390 --> 00:07:16,680
yazarsam, Mongoose Dopp modeline eşit ve daha sonra bu sefer tırnak içine alıp tekrar şemaya dönüş.

113
00:07:16,680 --> 00:07:21,030
Bu yüzden ilk kedi bir sermaye ile

114
00:07:21,120 --> 00:07:22,360
Ve biz kurtaracağız.

115
00:07:22,800 --> 00:07:29,190
Yani burada yaptığımız şey, her kedinin isim yaşı ve mizacına sahip olduğunu gösteren bir kalıp olan

116
00:07:29,190 --> 00:07:36,570
bu şema kedi şemasını aldık ve onu bir modele derledik ve onu değişken bir kediye kaydettik ve şimdi

117
00:07:36,570 --> 00:07:43,860
bu kedi değişkenini kullanabiliriz kedileri güncellemek için kedileri bulmak için kedileri bulmak için yeni kediler yapmak için başkent

118
00:07:43,860 --> 00:07:44,350
C ile.

119
00:07:44,610 --> 00:07:52,890
Cat'in her şeyi yapacağız, bu yüzden Cat find veya cat dot remove ya da cat dot create gibi şeyleri yapacağız.

120
00:07:53,370 --> 00:07:59,490
bir sürü farklı parçaya sahip olan bir kedi için bir desen olan bu kedi nesnesini yarattık.

121
00:07:59,490 --> 00:08:00,830
Dolayısıyla, şu anda

122
00:08:00,960 --> 00:08:05,370
Dolayısıyla bu, sadece bir kedi bir ad çağı ve mizaç olduğunu söyleyen saf desen.

123
00:08:05,610 --> 00:08:11,370
Ve onu bir modele derledikten sonra bir değişkene kaydettiğimizde, şu anda sadece bu desen değil,

124
00:08:11,370 --> 00:08:14,060
aslında onun üzerinde istediğimiz tüm yöntemler var.

125
00:08:14,190 --> 00:08:19,170
Bu deseni alır ve kullanması gereken tüm yöntemleri içeren bu karmaşık modeli oluşturur.

126
00:08:19,890 --> 00:08:25,410
Ve her zaman biraz şaşkın, özellikle de bunun için buradaki

127
00:08:25,410 --> 00:08:28,910
her zaman koleksiyon adının tekil hali gerekiyor.

128
00:08:28,950 --> 00:08:35,370
yaptığımız şey kediler diye bir koleksiyon yapacak ve çoğullaştırmak nasıl olursa olsun oldukça zeki.

129
00:08:35,370 --> 00:08:37,800
Dolayısıyla ona kedi verirsek, burada

130
00:08:37,800 --> 00:08:40,030
Bunu yapan küçük, güzel bir kütüphane var.

131
00:08:40,140 --> 00:08:44,790
Kişi gibi bir şeyi sorunsuz biçimde insanlara çoğaltılabilir.

132
00:08:44,790 --> 00:08:51,240
Bu yüzden tekrarlanan bu, kedimiz olan modelimizin tekil versiyonunun adı ve bunu otomatik olarak

133
00:08:51,240 --> 00:08:56,690
alacak ve veritabanımızda D-B salak kedilere benzeyen yeni bir koleksiyon oluşturacak.

134
00:08:56,700 --> 00:09:01,060
Tamam, şimdi bir kedi eklemek için yapmamız gereken her şeye sahibiz.

135
00:09:01,080 --> 00:09:02,740
Şimdi sadece kod yazmamız gerekiyor.
