در این مطلب، ویدئو معرفی FastAPI – بهترین راه برای ایجاد API در پایتون؟ با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:25:47
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,399 –> 00:00:02,800
سلام به همه در ویدیوی امروز، من میخواهم
2
00:00:02,800 –> 00:00:04,960
به شما یک معرفی سریع برای
3
00:00:04,960 –> 00:00:07,440
api سریع ارائه
4
00:00:07,440 –> 00:00:09,360
5
00:00:09,360 –> 00:00:11,759
6
00:00:11,759 –> 00:00:12,639
7
00:00:12,639 –> 00:00:15,120
8
00:00:15,120 –> 00:00:17,039
9
00:00:17,039 –> 00:00:19,520
کنم. ناهمزمان بنابراین به یک معنا
10
00:00:19,520 –> 00:00:21,520
عملکرد بالاتری نسبت به یک
11
00:00:21,520 –> 00:00:24,080
فریمورک وب معمولی UH مانند فلاسک یا جنگو دارد،
12
00:00:24,080 –> 00:00:25,519
حتی اگر راههایی وجود دارد که میتوانید
13
00:00:25,519 –> 00:00:28,240
آنها را ناهمزمان کنید، اما api سریع ساخته شده است که
14
00:00:28,240 –> 00:00:31,039
ناهمزمان باشد، همچنین نکته خوب
15
00:00:31,039 –> 00:00:32,320
در مورد آن این است که شما ندارید. به همان
16
00:00:32,320 –> 00:00:34,559
اندازه کد بنویسید زیرا با استفاده از
17
00:00:34,559 –> 00:00:37,600
سیستم راهنمایی نوع پایتون uh fafsa api
18
00:00:37,600 –> 00:00:39,200
قادر است بسیاری از کارهایی که
19
00:00:39,200 –> 00:00:40,320
می خواهید انجام دهید را کشف کند، بنابراین مجبور نیستید
20
00:00:40,320 –> 00:00:41,280
کد را
21
00:00:41,280 –> 00:00:43,440
مستقیماً چیز دیگری بنویسید زیرا این
22
00:00:43,440 –> 00:00:44,320
نوع اشاره
23
00:00:44,320 –> 00:00:47,120
می کند که می تواند به راحتی تبدیل به و
24
00:00:47,120 –> 00:00:47,920
از
25
00:00:47,920 –> 00:00:50,160
اشکال مختلف داده را انجام دهد، بنابراین با یک api
26
00:00:50,160 –> 00:00:51,520
شما مانند داده هایی خواهید داشت که
27
00:00:51,520 –> 00:00:54,800
از طریق درخواست ها می آیند، بنابراین می توانید آن را
28
00:00:54,800 –> 00:00:56,480
به مدل های داده ای که در
29
00:00:56,480 –> 00:00:57,120
کد خود دارید تبدیل کنید
30
00:00:57,120 –> 00:00:58,239
و سپس زمانی که برای بازگرداندن
31
00:00:58,239 –> 00:00:59,920
چیزی به کاربر، میتواند
32
00:00:59,920 –> 00:01:00,879
آن مدلهای داده را
33
00:01:00,879 –> 00:01:02,399
دوباره به چیزی تبدیل کند که کاربر
34
00:01:02,399 –> 00:01:04,640
واقعاً بتواند آن را ببیند و سپس به
35
00:01:04,640 –> 00:01:06,400
همراه آن اعتبارسنجی نیز وجود دارد،
36
00:01:06,400 –> 00:01:08,640
زیرا شما این نوع نکات را دارید
37
00:01:08,640 –> 00:01:10,080
و چون میتوانید چند مدل داده داشته باشید
38
00:01:10,080 –> 00:01:12,080
و از آن دادهها استفاده کنید. مدلهایی بهعنوان type
39
00:01:12,080 –> 00:01:14,240
ins fast api میتواند
40
00:01:14,240 –> 00:01:15,360
41
00:01:15,360 –> 00:01:16,880
فقط بر اساس نوع ins اعتبارسنجی به شما بدهد و من به
42
00:01:16,880 –> 00:01:18,720
شما نشان میدهم که چگونه همه این موارد در ویدیو کار میکنند،
43
00:01:18,720 –> 00:01:19,360
44
00:01:19,360 –> 00:01:20,799
بنابراین این api است که
45
00:01:20,799 –> 00:01:22,400
ما میخواهیم بسازیم.
46
00:01:22,400 –> 00:01:25,119
و اساساً فقط
47
00:01:25,119 –> 00:01:26,720
به من اجازه می دهد چند شهر را اضافه کنم که دارای
48
00:01:26,720 –> 00:01:28,080
مناطق زمانی هستند،
49
00:01:28,080 –> 00:01:30,720
بنابراین اگر شهری مانند لس آنجلس را اضافه کنم و
50
00:01:30,720 –> 00:01:33,439
سپس مانند لس آنجلس آمریکا را داشته
51
00:01:33,439 –> 00:01:35,920
باشم، می توانم آن را به عنوان منطقه زمانی اضافه کنم
52
00:01:35,920 –> 00:01:36,560
53
00:01:36,560 –> 00:01:38,159
و فقط آن را برای من ایجاد می کند و آن را
54
00:01:38,159 –> 00:01:40,159
برمی گرداند. چیزی که من فقط اضافه کردم
55
00:01:40,159 –> 00:01:42,159
و سپس می توانم یکی دیگر را اضافه کنم، بنابراین برای
56
00:01:42,159 –> 00:01:43,439
این یکی
57
00:01:43,439 –> 00:01:46,640
می گوییم واشنگتن
58
00:01:46,640 –> 00:01:50,880
دی سی و این امریکا
59
00:01:50,880 –> 00:01:54,320
اسلش نیویورک خواهد بود و می توانم این را اضافه کنم
60
00:01:54,320 –> 00:01:56,799
و سپس اگر به شهرهای اینجا بروم و
61
00:01:56,799 –> 00:01:57,759
آن را امتحان
62
00:01:57,759 –> 00:02:00,880
کنم، می توانم شهرهایی را که در پایگاه داده خود دارم دریافت کنید
63
00:02:00,880 –> 00:02:02,560
و دقیقاً مانند یک لیست
64
00:02:02,560 –> 00:02:05,200
در برنامه من است و همچنین
65
00:02:05,200 –> 00:02:06,719
زمان آن مکان ها را به من می گوید و
66
00:02:06,719 –> 00:02:10,000
شما منطقه زمانی واقعی آنها را می دانید، می دانید
67
00:02:10,000 –> 00:02:10,720
که چند
68
00:02:10,720 –> 00:02:14,400
ساعت از utc افست شده است و همچنین می توانم
69
00:02:14,400 –> 00:02:16,640
اینجا را حذف کنم
70
00:02:16,640 –> 00:02:18,640
و یک شناسه برای یک شهر مشخص کنم بنابراین می خواهم
71
00:02:18,640 –> 00:02:20,000
برای حذف اولین شهر
72
00:02:20,000 –> 00:02:22,720
که لس آنجلس است را بزنید اجرا کنید هیچ چیزی
73
00:02:22,720 –> 00:02:24,319
ظاهر نمی شود زیرا حذف است
74
00:02:24,319 –> 00:02:26,640
و سپس می توانم به اینجا برگردم و
75
00:02:26,640 –> 00:02:28,800
دوباره تمام شهرها را جستجو کنم
76
00:02:28,800 –> 00:02:30,720
و می بینیم که واشنگتن دی سی تنها
77
00:02:30,720 –> 00:02:31,920
شهر باقی مانده است
78
00:02:31,920 –> 00:02:33,200
بنابراین این چیزی است که در آن پوشش خواهم داد. این
79
00:02:33,200 –> 00:02:35,120
ویدیو و بیایید وارد نوشتن
80
00:02:35,120 –> 00:02:36,560
کد
81
00:02:36,560 –> 00:02:38,640
شویم، بنابراین برای شروع ابتدا باید
82
00:02:38,640 –> 00:02:40,080
فریم ورک را نصب کنیم،
83
00:02:40,080 –> 00:02:43,120
بنابراین pip install fast api و من از
84
00:02:43,120 –> 00:02:44,480
قبل یک محیط مجازی
85
00:02:44,480 –> 00:02:47,360
باز دارم، بنابراین فقط منتظر آن هستم و سپس
86
00:02:47,360 –> 00:02:48,640
ما به یک سرور برای
87
00:02:48,640 –> 00:02:51,680
اجرای api خود نیاز داریم. شما می توانید از
88
00:02:51,680 –> 00:02:54,400
یو وی کورن یا هایپر کورن استفاده کنید، من نمی توانم ذرت uv را
89
00:02:54,400 –> 00:02:56,400
برای نصب روی دستگاه خود تهیه کنم، بنابراین
90
00:02:56,400 –> 00:02:58,239
از هایپر کورن استفاده خواهم کرد اما آنها همین کار را انجام می دهند،
91
00:02:58,239 –> 00:02:59,680
بنابراین
92
00:02:59,680 –> 00:03:00,879
اگر می خواهید این ویدیو را دنبال کنید می توانید یکی
93
00:03:00,879 –> 00:03:02,800
را انتخاب کنید، فقط هایپر را انتخاب کنید. ذرت مثل من
94
00:03:02,800 –> 00:03:06,480
خیلی پیپ نصب hypercorn
95
00:03:06,480 –> 00:03:09,599
an من فقط برای آن صبر می کنم
96
00:03:10,720 –> 00:03:13,200
و سپس شروع به کار بسیار آسان است،
97
00:03:13,200 –> 00:03:13,760
98
00:03:13,760 –> 00:03:16,879
بنابراین یک فایل به نام main.pi ایجاد می کنم
99
00:03:16,879 –> 00:03:19,599
و در آن از fast api وارد می کنم، بنابراین
100
00:03:19,599 –> 00:03:20,959
از
101
00:03:20,959 –> 00:03:25,040
uh fast api import fast api
102
00:03:25,040 –> 00:03:27,040
و سپس باید نمونه سازی کنم. یک
103
00:03:27,040 –> 00:03:29,440
شی برنامه که از کلاس fast api استفاده می کند، بنابراین
104
00:03:29,440 –> 00:03:31,360
اگر قبلاً از flask استفاده کرده اید، این شبیه به flask است،
105
00:03:31,360 –> 00:03:32,239
106
00:03:32,239 –> 00:03:36,319
بنابراین برنامه برابر با fast api است
107
00:03:36,319 –> 00:03:37,920
و بعد از آن می توانم شروع به
108
00:03:37,920 –> 00:03:39,519
نوشتن در نقاط
109
00:03:39,519 –> 00:03:42,560
کنم تا بتوانم یک api داشته باشم که ساده ترین باشد. یکی
110
00:03:42,560 –> 00:03:43,840
از آنها درخواست git است،
111
00:03:43,840 –> 00:03:46,560
بنابراین کاری که من می توانم انجام دهم این است که می توانم شی برنامه را بگیرم
112
00:03:46,560 –> 00:03:48,480
و از یک دکوراتور استفاده کنم تا
113
00:03:48,480 –> 00:03:51,360
علامت در و سپس نقطه برنامه و سپس
114
00:03:51,360 –> 00:03:54,159
می توانید از روش http استفاده کنید، بنابراین پست ها را دریافت
115
00:03:54,159 –> 00:03:57,200
کنید
116
00:03:58,000 –> 00:04:01,040
و گزینه های حذف پچ و غیره وجود داشته باشد. چند مورد
117
00:04:01,040 –> 00:04:01,439
اما
118
00:04:01,439 –> 00:04:04,080
شما فقط می توانید از چهار یا بیشتر در یک
119
00:04:04,080 –> 00:04:05,040
برنامه واقعی استفاده کنید،
120
00:04:05,040 –> 00:04:07,200
بنابراین برای این برنامه من یک درخواست git
121
00:04:07,200 –> 00:04:08,640
خواهم داشت و آن را در فهرست قرار می دهم،
122
00:04:08,640 –> 00:04:10,560
بنابراین این بسیار شبیه فلاسک است به جز
123
00:04:10,560 –> 00:04:12,560
124
00:04:12,560 –> 00:04:15,200
برنامه app.route. .git بنابراین
125
00:04:15,200 –> 00:04:17,358
اگر از آن استفاده کرده اید این قسمت در واقع شبیه بطری است،
126
00:04:17,358 –> 00:04:18,880
بنابراین در این مرحله باید یک
127
00:04:18,880 –> 00:04:20,478
تابع زیر آن ایجاد کنم بنابراین
128
00:04:20,478 –> 00:04:21,279
من فقط این
129
00:04:21,279 –> 00:04:24,320
فهرست را صدا می زنم و سپس از اینجا
130
00:04:24,320 –> 00:04:27,280
می توانم برخی از داده ها را برگردانم، بنابراین کاری که می توانم انجام دهم این است
131
00:04:27,280 –> 00:04:28,560
که فقط می توانم
132
00:04:28,560 –> 00:04:31,600
چیزی شبیه به یک کلید را برگردانم
133
00:04:31,600 –> 00:04:34,880
و سپس مقدار را همین حالا برای راه اندازی
134
00:04:34,880 –> 00:04:36,400
این برنامه انجام دهم. انجام این کار این است که باید
135
00:04:36,400 –> 00:04:36,800
از
136
00:04:36,800 –> 00:04:39,840
hypercorn so hypercorn استفاده
137
00:04:39,840 –> 00:04:41,440
کنم و سپس باید
138
00:04:41,440 –> 00:04:43,120
نام فایل را خیلی اصلی
139
00:04:43,120 –> 00:04:44,960
و سپس نام شی برنامه را
140
00:04:44,960 –> 00:04:47,280
در داخل فایل مشخص کنم که برنامه است، بنابراین یک دونقطه
141
00:04:47,280 –> 00:04:48,240
بین این دو،
142
00:04:48,240 –> 00:04:50,560
سپس از خط تیره استفاده می کنم. dash دوباره بارگذاری کنید
143
00:04:50,560 –> 00:04:51,440
تا
144
00:04:51,440 –> 00:04:53,280
هر بار که فایل را ذخیره می کنم سرور به طور خودکار راه اندازی مجدد شود
145
00:04:53,280 –> 00:04:54,960
،
146
00:04:54,960 –> 00:04:57,919
بنابراین این را شروع می کنم و سپس به آن قسمت می روم
147
00:04:57,919 –> 00:04:58,560
148
00:04:58,560 –> 00:05:01,680
و آدرس اینترنتی را در مرورگر خود باز می کنم، بنابراین اجازه دهید
149
00:05:01,680 –> 00:05:03,440
به مرورگر بروم
150
00:05:03,440 –> 00:05:05,680
و به فهرست می روم و اکنون می
151
00:05:05,680 –> 00:05:06,479
توانم مقدار کلید را ببینم،
152
00:05:06,479 –> 00:05:09,199
بنابراین نتیجه گرفتن واقعاً بسیار ساده است
153
00:05:09,199 –> 00:05:10,080
،
154
00:05:10,080 –> 00:05:12,960
اما البته می توانید این کار را در فلاسک
155
00:05:12,960 –> 00:05:13,759
یا بطری انجام دهید
156
00:05:13,759 –> 00:05:15,600
و این واقعاً جالب نیست، بنابراین
157
00:05:15,600 –> 00:05:17,120
آنچه در ادامه به آن خواهیم پرداخت
158
00:05:17,120 –> 00:05:18,639
ویژگی هایی است که
159
00:05:18,639 –> 00:05:21,759
api سریع را منحصر به فرد می کند. بنابراین
160
00:05:21,759 –> 00:05:24,080
اول اسناد خودکار است، بنابراین شما
161
00:05:24,080 –> 00:05:26,320
در واقع دو شکل از مستندات
162
00:05:26,320 –> 00:05:29,440
y را دریافت می کنید شما swagger دارید، بنابراین شما فقط به
163
00:05:29,440 –> 00:05:32,400
آدرس اینترنتی خود بروید و سپس اسناد را اسلش کنید و
164
00:05:32,400 –> 00:05:34,800
در اینجا swagger دریافت می کنید، بنابراین من یک نقطه پایانی دارم و
165
00:05:34,800 –> 00:05:37,280
به نام index است و می توانم آن را باز کنم
166
00:05:37,280 –> 00:05:39,360
و می توانم اطلاعاتی در مورد نحوه کارکرد آن را ببینم،
167
00:05:39,360 –> 00:05:40,720
بنابراین اگر
168
00:05:40,720 –> 00:05:43,680
آن را امتحان کنم کلیک کنم و اجرا را بزنید سپس در اینجا
169
00:05:43,680 –> 00:05:45,840
پاسخی را دریافت میکنم که فقط مقدار کلیدی است
170
00:05:45,840 –> 00:05:48,000
و همچنین نوع دیگری از
171
00:05:48,000 –> 00:05:50,080
مستندات
172
00:05:50,080 –> 00:05:53,280
به نام redoc وجود دارد و این فقط
173
00:05:53,280 –> 00:05:56,080
یک روش متفاوت برای نمایش است که میدانید
174
00:05:56,080 –> 00:05:58,319
175
00:05:58,400 –> 00:06:00,720
هر نقطه پایانی چیست و چه کاری میتواند درست انجام دهد،
176
00:06:00,720 –> 00:06:02,560
بنابراین ما برمیگردیم. در
177
00:06:02,560 –> 00:06:04,160
مورد این ویدیو به شدت به شما نشان خواهم داد که
178
00:06:04,160 –> 00:06:06,319
چگونه کار می کند، اما فقط بدانید که
179
00:06:06,319 –> 00:06:08,639
180
00:06:08,639 –> 00:06:10,479
وقتی نقاط پایانی خود را در برنامه خود ایجاد می کنید، مستندات خودکار برای شما ایجاد شده است،
181
00:06:10,479 –> 00:06:11,759
182
00:06:11,759 –> 00:06:13,680
بنابراین من قصد دارم یک نمونه api ایجاد کنم تا به نوعی نشان دهم که
183
00:06:13,680 –> 00:06:14,800
184
00:06:14,800 –> 00:06:16,880
چگونه fast api کار می کند و چه چیز جالبی در مورد
185
00:06:16,880 –> 00:06:17,840
آن است، بنابراین
186
00:06:17,840 –> 00:06:19,360
ابتدا می خواهم مانند یک
187
00:06:19,360 –> 00:06:21,600
پایگاه داده در حافظه ایجاد کنم
188
00:06:21,600 –> 00:06:23,520
تا چیزهایی را که می خواهم
189
00:06:23,520 –> 00:06:25,280
از api نمایش دهم و چیزهایی را که می خواهم به
190
00:06:25,280 –> 00:06:27,680
کاربر اجازه درج کردن آن ها را اجازه بدهم تا db
191
00:06:27,680 –> 00:06:29,600
برابر باشد، نگه دارم. یک لیست خالی
192
00:06:29,600 –> 00:06:32,800
و بعد چه من قصد دارم این کار را انجام دهم این است
193
00:06:32,800 –> 00:06:33,520
194
00:06:33,520 –> 00:06:35,919
که چند نقطه پایانی ایجاد خواهم کرد، بنابراین برای این، چهار نقطه پایانی خواهم داشت که
195
00:06:35,919 –> 00:06:36,960
196
00:06:36,960 –> 00:06:39,120
دو تای آنها درخواست دریافت خواهند بود، بنابراین من app.git
197
00:06:39,120 –> 00:06:40,639
198
00:06:40,639 –> 00:06:43,759
و سپس شهرها را اسلش خواهم کرد و سپس
199
00:06:43,759 –> 00:06:44,880
یکی را برای
200
00:06:44,880 –> 00:06:47,759
گرفتن یک شهر خاص بنابراین شهرها و
201
00:06:47,759 –> 00:06:48,080
سپس
202
00:06:48,080 –> 00:06:50,800
اسلش و سپس مقداری متغیر برای نگه داشتن
203
00:06:50,800 –> 00:06:52,880
شناسه یک شهر، بنابراین من فقط این شهر را
204
00:06:52,880 –> 00:06:53,360
id صدا
205
00:06:53,360 –> 00:06:55,599
206
00:06:55,599 –> 00:06:57,440
می زنم و فقط براکت های فرفری در اطراف نام واقعی متغیر است که می
207
00:06:57,440 –> 00:06:58,319
خواهم از
208
00:06:58,319 –> 00:07:00,720
آن استفاده کنم. یکی برای درخواستهای پست
209
00:07:00,720 –> 00:07:02,479
خواهم داشت که به من امکان میدهد شهری ایجاد کنم
210
00:07:02,479 –> 00:07:05,759
تا شهرهایی بدون تریلیون اسلش ایجاد کنم
211
00:07:05,759 –> 00:07:07,759
و آخرین مورد حذف خواهد شد که
212
00:07:07,759 –> 00:07:09,840
به من امکان میدهد شهرهایی را که
213
00:07:09,840 –> 00:07:10,800
214
00:07:10,800 –> 00:07:13,680
به پایگاه داده اضافه کردهام حذف کنم، بنابراین اکنون میخواهم
215
00:07:13,680 –> 00:07:14,880
ایجاد کنم. تابعی
216
00:07:14,880 –> 00:07:18,080
که در زیر اولین دریافت قرار می گیرد،
217
00:07:18,080 –> 00:07:22,000
بنابراین من این git را شهرستانها می نامم
218
00:07:22,080 –> 00:07:24,479
و کاری که می توانم در اینجا انجام دهم بسیار ساده است، من
219
00:07:24,479 –> 00:07:26,080
فقط می توانم
220
00:07:26,080 –> 00:07:27,840
اطلاعات را از پایگاه داده برگردانم، بنابراین
221
00:07:27,840 –> 00:07:29,599
ساده ترین راه برای انجام این کار این است که
222
00:07:29,599 –> 00:07:30,319
223
00:07:30,319 –> 00:07:33,759
db so one را برگردانم. یکی از کارهایی که api سریع
224
00:07:33,759 –> 00:07:35,199
برای شما انجام می دهد این است که
225
00:07:35,199 –> 00:07:38,479
یک نسخه json از هر داده ایجاد می کند at
226
00:07:38,479 –> 00:07:40,880
you pass تا زمانی که به خوبی تعریف شده باشد، بنابراین
227
00:07:40,880 –> 00:07:43,039
برای چیزی مانند یک لیست یا رشته ها تبدیل
228
00:07:43,039 –> 00:07:44,080
آن بسیار
229
00:07:44,080 –> 00:07:46,479
آسان است و همانطور که بعدا خواهیم دید،
230
00:07:46,479 –> 00:07:47,840
همچنین می تواند
231
00:07:47,840 –> 00:07:49,360
ساختارهای داده های مختلفی را که
232
00:07:49,360 –> 00:07:51,280
ایجاد می کنید تبدیل کند، اجازه دهید من در مورد آنها نظر بدهم
233
00:07:51,280 –> 00:07:52,639
زیرا آنها باعث خراب شدن
234
00:07:52,639 –> 00:07:54,240
برنامه می شود زیرا
235
00:07:54,240 –> 00:07:56,560
توابعی در زیر آنها وجود
236
00:07:56,560 –> 00:07:59,280
ندارد، اما در اینجا می بینیم که اگر به این نقطه پایانی بروم
237
00:07:59,280 –> 00:08:00,560
که انجام نمی دهم، فقط
238
00:08:00,560 –> 00:08:02,479
یک شی json خالی را برمی گرداند که
239
00:08:02,479 –> 00:08:03,599
خیلی جالب
240
00:08:03,599 –> 00:08:05,599
نیست، بنابراین من می خواهم بعدی را انجام دهید این است که می خواهم به
241
00:08:05,599 –> 00:08:07,120
کاربر اجازه دهم واقعاً
242
00:08:07,120 –> 00:08:10,000
یک شهر جدید ایجاد کند، بنابراین قبل از اینکه بتوانم
243
00:08:10,000 –> 00:08:11,840
یک شهر جدید ایجاد کنم، باید
244
00:08:11,840 –> 00:08:13,520
ساختاری را برای یک شهر
245
00:08:13,520 –> 00:08:16,479
در برنامه خود تعریف کنم، بنابراین برای انجام این کار می توانم یک
246
00:08:16,479 –> 00:08:17,680
مدل برای آن
247
00:08:17,680 –> 00:08:21,360
ایجاد کنم. از pedantic استفاده می کنم که به
248
00:08:21,360 –> 00:08:23,199
من امکان می دهد یک مدل ایجاد کنم و از نکات نوع استفاده می
249
00:08:23,199 –> 00:08:24,960
کند که قبلاً در مورد آن صحبت کردم
250
00:08:24,960 –> 00:08:25,520
تا
251
00:08:25,520 –> 00:08:28,160
نوع فیلدهایی را که در آن
252
00:08:28,160 –> 00:08:29,280
هستند تعریف کنم، بنابراین من از
253
00:08:29,280 –> 00:08:33,200
مدل پایه pydantic i import
254
00:08:33,200 –> 00:08:35,519
و سپس اینجا درست در زیر می گویم. پایگاه داده
255
00:08:35,519 –> 00:08:37,679
من یک مدل ایجاد خواهم کرد، بنابراین من این شهر را صدا خواهم کرد
256
00:08:37,679 –> 00:08:39,519
برای مدل و
257
00:08:39,519 –> 00:08:41,200
مدل پایه را به ارث می برد
258
00:08:41,200 –> 00:08:43,120
و سپس می خواهم فیلدهایی را
259
00:08:43,120 –> 00:08:44,399
که در شهر هستند مشخص کنم، بنابراین
260
00:08:44,399 –> 00:08:46,480
نام و منطقه زمانی
261
00:08:46,480 –> 00:08:47,839
دو موردی هستند که در آنجا هستند
262
00:08:47,839 –> 00:08:49,600
و کاری که می خواهم انجام دهم این است که می خواهم
263
00:08:49,600 –> 00:08:51,279
نوع آن را مشخص کنم.
264
00:08:51,279 –> 00:08:53,040
بنابراین اینجا جایی است که نوع حاشیه نویسی
265
00:08:53,040 –> 00:08:55,120
در پایتون وارد عمل می شود،
266
00:08:55,120 –> 00:08:57,360
بنابراین به جای انجام کاری شبیه به نام،
267
00:08:57,360 –> 00:08:58,560
می دانید که
268
00:08:58,560 –> 00:09:00,560
رشته نقطه ای را احساس کنید،
269
00:09:00,560 –> 00:09:01,920
اگر قبلاً از آن استفاده کرده باشید
270
00:09:01,920 –> 00:09:02,560
271
00:09:02,560 –> 00:09:04,240
به جای انجام تمام کاری که
272
00:09:04,240 –> 00:09:06,240
باید انجام دهید این است که مانند مارشمالو است. بگویید هم بزنید
273
00:09:06,240 –> 00:09:09,279
و سپس برای منطقه زمانی میتوانم بگویم هم بزنید، بنابراین
274
00:09:09,279 –> 00:09:11,279
اگر فهرستی داشتم، میتوانم بگویم
275
00:09:11,279 –> 00:09:14,880
فهرست اگر دیکشنری داشتم، میتوانم بگویم
276
00:09:14,880 –> 00:09:16,160
فرهنگ لغت اگر
277
00:09:16,160 –> 00:09:18,720
شیء تاریخ داشتم، میتوانم تاریخ زمان
278
00:09:18,720 –> 00:09:19,760
یا غیره را با
279
00:09:19,760 –> 00:09:21,600
هر نوع داده بگویم. آیا شما فقط
280
00:09:21,600 –> 00:09:22,800
آن را اینجا
281
00:09:22,800 –> 00:09:24,800
بعد از کولون قرار می دهید، بنابراین من دو فیلد
282
00:09:24,800 –> 00:09:26,160
در شهر خود دارم
283
00:09:26,160 –> 00:09:29,680
و آنها نوع رشته را دارند،
284
00:09:29,680 –> 00:09:32,720
بنابراین اکنون وقتی می خواهم شهر ایجاد
285
00:09:32,720 –> 00:09:34,000
کنم، اجازه دهید به پست ها بروم،
286
00:09:34,000 –> 00:09:37,519
بنابراین در واقع باید این یکی را از نظر حذف
287
00:09:37,519 –> 00:09:38,800
کنم
288
00:09:38,800 –> 00:09:40,959
و من یک تابع در زیر ایجاد می
289
00:09:40,959 –> 00:09:43,440
کنم و این را ایجاد شهر می کنم
290
00:09:43,440 –> 00:09:46,959
شهر را ایجاد کنید
291
00:09:46,959 –> 00:09:50,000
و اینجا قسمتی است که
292
00:09:50,000 –> 00:09:52,000
احتمالاً با هر
293
00:09:52,000 –> 00:09:54,080
فریمورکی که در پایتون استفاده کرده اید بسیار متفاوت است،
294
00:09:54,080 –> 00:09:55,360
بنابراین در اینجا من دوباره از
295
00:09:55,360 –> 00:09:57,360
حاشیه نویسی تایپ استفاده می کنم بنابراین
296
00:09:57,360 –> 00:09:59,519
یک پارامتر به نام شهر دارم اما علاوه
297
00:09:59,519 –> 00:10:01,200
بر پارامتر I یک نوع
298
00:10:01,200 –> 00:10:03,040
برای پارامتر خواهم داشت و
299
00:10:03,040 –> 00:10:04,959
این همان مدل شهری است که من در اینجا ایجاد کردم،
300
00:10:04,959 –> 00:10:07,760
بنابراین با انجام این
301
00:10:07,760 –> 00:10:10,720
api سریع به طور خودکار انتظار می رود
302
00:10:10,720 –> 00:10:11,360
چیزی
303
00:10:11,360 –> 00:10:13,680
شبیه شهر در
304
00:10:13,680 –> 00:10:14,720
بدنه درخواست باشد،
305
00:10:14,720 –> 00:10:16,480
بنابراین وقتی می روم برای تکان دادن و ایجاد آن،
306
00:10:16,480 –> 00:10:19,040
خواهید دید که چگونه می توانم یک شهر
307
00:10:19,040 –> 00:10:20,399
در بدنه درخواست ارسال شده ایجاد کنم
308
00:10:20,399 –> 00:10:22,800
و سپس fasta api آن را انتخاب می
309
00:10:22,800 –> 00:10:23,680
کند، می دانید که
310
00:10:23,680 –> 00:10:25,920
آن را در این متغیر uh
311
00:10:25,920 –> 00:10:27,440
به نام شهر قرار می دهد و
312
00:10:27,440 –> 00:10:30,640
من آن را به عنوان در دسترس خواهم داشت آن آرگومان شهر،
313
00:10:30,640 –> 00:10:33,279
بنابراین کاری که من می توانم اینجا انجام دهم این است که
314
00:10:33,279 –> 00:10:34,640
چون یک شی شهر است،
315
00:10:34,640 –> 00:10:36,240
چیزی که می خواهم انجام دهم این است که می خواهم آن را
316
00:10:36,240 –> 00:10:38,399
در db خود قرار دهم و چند راه برای
317
00:10:38,399 –> 00:10:40,000
انجام آن وجود دارد که می توانم خود شی را
318
00:10:40,000 –> 00:10:41,920
مستقیماً در پایگاه داده قرار دهم. اما در عوض
319
00:10:41,920 –> 00:10:43,279
کاری که من انجام خواهم داد این است که ابتدا آن را به دیکشنری تبدیل می کنم
320
00:10:43,279 –> 00:10:44,800
و سپس آن را در
321
00:10:44,800 –> 00:10:45,440
پایگاه داده
322
00:10:45,440 –> 00:10:48,880
خود قرار دهید تا این کار را انجام دهم که من فقط می توانم db را به
323
00:10:48,880 –> 00:10:50,640
درستی اضافه کنم و شهر را در
324
00:10:50,640 –> 00:10:52,320
آنجا قرار می دهم اما می خواهم آن را به یک دیکشنری تبدیل کنم
325
00:10:52,320 –> 00:10:53,839
بنابراین لزوماً نیازی
326
00:10:53,839 –> 00:10:54,880
به انجام این کار ندارم. اما من
327
00:10:54,880 –> 00:10:56,800
به هر حال این کار را انجام می دهم تا یک
328
00:10:56,800 –> 00:10:58,240
ساختار مشترک
329
00:10:58,240 –> 00:11:00,079
داشته باشم زیرا اگر می خواهید این پایگاه داده را با
330
00:11:00,079 –> 00:11:02,240
برخی چیزها
331
00:11:02,240 –> 00:11:04,000
ببینید، به جای ایجاد شهرها، داشتن دیکشنری هایی مانند فرهنگ لغت در اینجا بسیار آسان تر خواهد بود،
332
00:11:04,000 –> 00:11:05,360
اما اگر می خواهید
333
00:11:05,360 –> 00:11:07,200
ایجاد کنید شهرها مستقیماً میتوانید
334
00:11:07,200 –> 00:11:08,800
فکر نکنید
335
00:11:08,800 –> 00:11:10,880
انجام این کار ایرادی دارد و سپس کاری که میخواهم
336
00:11:10,880 –> 00:11:12,560
انجام دهم این است که میخواهم چیزی را که به
337
00:11:12,560 –> 00:11:14,320
تازگی در پایگاه داده درج کردهام برگردانم
338
00:11:14,320 –> 00:11:17,440
تا بتوانم
339
00:11:17,440 –> 00:11:19,040
آخرین مورد در پایگاه داده را با استفاده از
340
00:11:19,040 –> 00:11:20,800
یک منفی برگردانم. درست است پس
341
00:11:20,800 –> 00:11:22,399
اتفاقی که قرار است بیفتد این است که شهر
342
00:11:22,399 –> 00:11:24,000
در بدنه خواهد بود و من باید
343
00:11:24,000 –> 00:11:25,279
یک دونقطه در اینجا اضافه کنم
344
00:11:25,279 –> 00:11:27,120
و سپس آن را به یک دیکشنری تبدیل کنم
345
00:11:27,120 –> 00:11:29,200
و به پایگاه داده درون حافظه خود اضافه کنم
346
00:11:29,200 –> 00:11:30,000
347
00:11:30,000 –> 00:11:32,800
و سپس من میخواهم آن را همین
348
00:11:32,800 –> 00:11:34,800
الان برگردانم، بنابراین حالا بیایید نگاهی به این موضوع بیاندازیم،
349
00:11:34,800 –> 00:11:36,800
بنابراین من به
350
00:11:36,800 –> 00:11:40,560
br owser و من به اسناد برمی گردم،
351
00:11:40,839 –> 00:11:42,160
352
00:11:42,160 –> 00:11:44,880
ما یک درخواست پست را می بینیم که سبز رنگ است، می توانم
353
00:11:44,880 –> 00:11:46,160
روی آن کلیک کنم
354
00:11:46,160 –> 00:11:49,120
و در اینجا یک بدنه درخواست مثال وجود دارد،
355
00:11:49,120 –> 00:11:51,040
بنابراین نام و منطقه زمانی و می گوید که
356
00:11:51,040 –> 00:11:52,320
هر دو باید رشته باشند
357
00:11:52,320 –> 00:11:54,320
و اگر روی آن را امتحان کنم، اجرا می شود
358
00:11:54,320 –> 00:11:57,279
برای اینکه آن دو چیز را
359
00:11:57,279 –> 00:11:59,040
به عنوان مکاننما به من بدهم و سپس میتوانم یک
360
00:11:59,040 –> 00:12:02,240
شهر بسازم، برای مثال میتوانم بگویم لاس وگاس
361
00:12:02,240 –> 00:12:05,200
و سپس میتوانم مانند آمریکا لس
362
00:12:05,200 –> 00:12:06,800
آنجلس برای
363
00:12:06,800 –> 00:12:09,440
من