﻿1
00:00:01,180 --> 00:00:03,630
‫-: Lassen Sie uns jetzt ganz schnell

2
00:00:03,630 --> 00:00:06,700
‫das Modell für unsere Buchungen erstellen, damit wir dann im

3
00:00:06,700 --> 00:00:09,873
‫nächsten Video tatsächlich mit der Erstellung einiger echter Buchungen beginnen können.

4
00:00:11,590 --> 00:00:13,490
‫Schließen wir

5
00:00:13,490 --> 00:00:18,073
‫also einige dieser Dateien hier, auch diese Ordner.

6
00:00:21,965 --> 00:00:26,070
‫Hier ist der Modelordner und damit das Buchungsmodell. js.

7
00:00:30,170 --> 00:00:32,700
‫Und das wird natürlich sehr ähnlich zu dem sein,

8
00:00:32,700 --> 00:00:34,860
‫was wir vorher schon gemacht haben, also werde

9
00:00:34,860 --> 00:00:36,510
‫ich das ziemlich schnell machen.

10
00:00:40,290 --> 00:00:43,463
‫Wir brauchen also wie immer Mungo und

11
00:00:48,362 --> 00:00:52,043
‫erstellen unser Buchungsschema Mungo. Schema, und jetzt erinnern Sie

12
00:00:57,560 --> 00:00:59,890
‫sich daran, wie wir zuvor gesagt haben,

13
00:00:59,890 --> 00:01:01,850
‫dass wir hier bei den Buchungen

14
00:01:01,850 --> 00:01:05,350
‫Absatzverweise verwenden werden, also im Grunde genommen einen Verweis auf die

15
00:01:05,350 --> 00:01:08,853
‫Tour und auch auf den Benutzer, der die Tour gebucht hat.

16
00:01:10,030 --> 00:01:11,743
‫Das ist also ganz einfach.

17
00:01:15,624 --> 00:01:17,660
‫Das haben wir schon oft gemacht.

18
00:01:17,660 --> 00:01:21,457
‫Also Mungo. Schema. ObjectId, richtig?

19
00:01:24,700 --> 00:01:28,310
‫Und dann die Referenz, und diese

20
00:01:28,310 --> 00:01:31,670
‫wird auf das Tourmodell verweisen.

21
00:01:31,670 --> 00:01:34,423
‫Dann sagen wir auch,

22
00:01:39,200 --> 00:01:43,960
‫diese sind erforderlich, Buchung muss zu einer Tour gehören.

23
00:01:47,278 --> 00:01:49,200
‫Lassen Sie uns das

24
00:01:53,490 --> 00:01:58,060
‫jetzt einfach greifen und dasselbe für einen Benutzer erstellen, okay?

25
00:01:58,060 --> 00:02:00,420
‫Das ist, was wir gerade gesagt haben, dass

26
00:02:00,420 --> 00:02:02,360
‫wir eine Referenz sowohl der Tour,

27
00:02:02,360 --> 00:02:05,853
‫die gekauft wird, als auch des Benutzers, der den Kauf durchführt, aufbewahren werden.

28
00:02:07,260 --> 00:02:09,470
‫Dann wollen wir auch wissen, zu

29
00:02:09,470 --> 00:02:11,840
‫welchem Preis der Kauf tatsächlich stattgefunden hat, und

30
00:02:11,840 --> 00:02:14,200
‫das liegt daran, dass sich der Preis in

31
00:02:14,200 --> 00:02:17,250
‫Zukunft ändern kann und wir dann nicht mehr wissen, wie

32
00:02:17,250 --> 00:02:19,910
‫viel ein bestimmter Benutzer für eine Tour bezahlt hat.

33
00:02:19,910 --> 00:02:23,160
‫Und deshalb ist es wichtig, dies auch hier in

34
00:02:23,160 --> 00:02:26,763
‫der Buchung zu haben, also wird dies eine Zahl

35
00:02:28,560 --> 00:02:30,533
‫sein, und wir benötigen

36
00:02:35,560 --> 00:02:38,443
‫dies auch, Buchung muss einen Preis haben.

37
00:02:45,100 --> 00:02:48,667
‫Als nächstes erstellen wir auch unseren Zeitstempel createdAt, der ein

38
00:02:52,340 --> 00:02:53,343
‫Datum ist,

39
00:02:54,300 --> 00:02:56,410
‫und fügen dann einfach Standard hinzu,

40
00:02:56,410 --> 00:02:58,323
‫damit wir nichts tun müssen.

41
00:03:01,070 --> 00:03:04,483
‫Schließlich möchte ich auch eine kostenpflichtige Unterkunft erstellen,

42
00:03:05,850 --> 00:03:09,810
‫und diese wird automatisch auf "true" gesetzt, jedoch nur

43
00:03:09,810 --> 00:03:12,050
‫für den Fall, dass beispielsweise

44
00:03:12,050 --> 00:03:14,360
‫ein Administrator eine Buchung außerhalb von

45
00:03:14,360 --> 00:03:16,250
‫Stripe erstellen möchte.

46
00:03:16,250 --> 00:03:19,550
‫Also zum Beispiel, wenn ein Kunde keine Kreditkarte besitzt

47
00:03:19,550 --> 00:03:22,940
‫und direkt bezahlen möchte, wie in einem Geschäft mit Bargeld

48
00:03:22,940 --> 00:03:24,330
‫oder so ähnlich.

49
00:03:24,330 --> 00:03:27,050
‫Und in diesem Fall könnte ein Administrator dann

50
00:03:27,050 --> 00:03:29,740
‫unsere Buchungs-API verwenden, um im Grunde manuell

51
00:03:29,740 --> 00:03:33,430
‫eine Tour zu erstellen, die dann bezahlt oder noch nicht

52
00:03:33,430 --> 00:03:34,683
‫bezahlt werden kann.

53
00:03:37,140 --> 00:03:39,163
‫Also nur ein sehr kleines

54
00:03:41,180 --> 00:03:44,210
‫Detail hier, bei dem Gedanken, und dachte, dass es

55
00:03:44,210 --> 00:03:46,670
‫interessant sein könnte, das auch hier aufzunehmen.

56
00:03:46,670 --> 00:03:49,070
‫Aber natürlich wird es standardmäßig wahr sein,

57
00:03:49,070 --> 00:03:50,920
‫damit wir nichts tun müssen.

58
00:03:52,790 --> 00:03:56,663
‫Nun endlich erstellen wir daraus ein Modell, also

59
00:03:59,440 --> 00:04:03,793
‫Buchung ist gleich Mungo. model, und dann natürlich

60
00:04:10,510 --> 00:04:13,444
‫unser bookingSchema und dann das

61
00:04:13,444 --> 00:04:15,183
‫ganze exportieren,

62
00:04:19,850 --> 00:04:21,770
‫ist gleich Booking.

63
00:04:21,770 --> 00:04:23,680
‫Was wir jetzt auch

64
00:04:23,680 --> 00:04:27,850
‫hier machen wollen, ist die Tour und den Benutzer automatisch zu

65
00:04:27,850 --> 00:04:30,890
‫befüllen, wenn es eine Anfrage gibt, in Ordnung?

66
00:04:30,890 --> 00:04:33,220
‫Denken Sie also daran, wie wir das früher

67
00:04:33,220 --> 00:04:34,723
‫mit Abfrage-Middleware gemacht haben.

68
00:04:35,770 --> 00:04:39,210
‫Also direkt auf dem Schema. pre, und dann

69
00:04:39,210 --> 00:04:42,470
‫here oder wie üblich regulärer Ausdruck und was

70
00:04:43,990 --> 00:04:46,183
‫auch immer mit find beginnt.

71
00:04:50,640 --> 00:04:53,363
‫Also hier als nächstes

72
00:04:55,240 --> 00:05:00,240
‫und dann das. füllen, und lassen Sie es uns tatsächlich

73
00:05:00,970 --> 00:05:02,760
‫sowohl für den Benutzer

74
00:05:02,760 --> 00:05:05,450
‫als auch für die Touren automatisch tun.

75
00:05:05,450 --> 00:05:07,810
‫Und das ist in diesem

76
00:05:07,810 --> 00:05:10,220
‫Fall für die Performance absolut kein Problem,

77
00:05:10,220 --> 00:05:14,170
‫denn es wird nicht viele Anrufe zu den Buchungen geben, da

78
00:05:14,170 --> 00:05:17,600
‫sie eigentlich nur Guides und Admins machen dürfen, oder?

79
00:05:17,600 --> 00:05:19,590
‫Also im Grunde genommen, für einen Guide,

80
00:05:19,590 --> 00:05:21,920
‫um zu überprüfen, ob ihre Touren tatsächlich gebucht wurden.

81
00:05:21,920 --> 00:05:23,980
‫Das ist also einer der Anwendungsfälle,

82
00:05:23,980 --> 00:05:27,000
‫die ich für diesen Teil der API sehe, okay?

83
00:05:27,000 --> 00:05:30,140
‫Auch hier wird diese Abfrage nicht so oft vorkommen,

84
00:05:30,140 --> 00:05:32,350
‫sodass wir all dies problemlos ohne

85
00:05:32,350 --> 00:05:33,493
‫Probleme füllen können.

86
00:05:35,120 --> 00:05:37,850
‫Befüllen wir also auch die Tour, aber

87
00:05:37,850 --> 00:05:40,833
‫hier möchte ich eigentlich nur den Tournamen auswählen.

88
00:05:42,410 --> 00:05:47,410
‫Sagen wir Pfad, Tour und wählen Sie nur den Namen aus, okay?

89
00:05:52,400 --> 00:05:56,070
‫Nun haben wir hier einen Fehler, gut, also

90
00:05:56,070 --> 00:05:59,413
‫sollte das natürlich Mungo sein, nicht Mondgans.

91
00:06:01,250 --> 00:06:05,420
‫Also, ESLint hat uns hier noch einmal gerettet.

92
00:06:05,420 --> 00:06:07,163
‫Oh, und eigentlich gibt es noch mehr.

93
00:06:08,860 --> 00:06:12,260
‫Speichern Sie es noch einmal, und jetzt sind wir gut.

94
00:06:12,260 --> 00:06:14,060
‫Das ist es also tatsächlich.

95
00:06:14,060 --> 00:06:15,540
‫Dies ist unser Buchungsmodell,

96
00:06:16,429 --> 00:06:18,613
‫das wir jetzt im nächsten Video verwenden können.

