در این مطلب، ویدئو ارسال فایل – Python در وب – Learning Flask Series Pt. 14 با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:21:37
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,149 –> 00:00:02,370
همه میدانید که کارتان خوب است
2
00:00:02,370 –> 00:00:04,019
و به قسمت دیگری از آموزش فلاسکها خوش آمدید،
3
00:00:04,019 –> 00:00:06,509
این قسمت 14 است و
4
00:00:06,509 –> 00:00:09,120
ما
5
00:00:09,120 –> 00:00:11,099
فایلها را از یک برنامه فلاسک ارسال/دانلود میکنیم،
6
00:00:11,099 –> 00:00:13,139
بنابراین موارد استفاده زیادی وجود دارد، اولین چیزی
7
00:00:13,139 –> 00:00:16,650
که میدانید دانلود گزارشها تصاویر فایلهای CSV
8
00:00:16,650 –> 00:00:20,760
هر نوع فایلی را که بتوانیم
9
00:00:20,760 –> 00:00:22,920
به کاربرانمان اجازه دهیم به یک URL بروند و
10
00:00:22,920 –> 00:00:24,960
آنها را از برنامه فلاسک ما دانلود کنند
11
00:00:24,960 –> 00:00:26,250
و واقعاً ساده است،
12
00:00:26,250 –> 00:00:28,619
به طور مستقیم وارد آن شده و
13
00:00:28,619 –> 00:00:30,869
شروع به کار کنیم، مانند همیشه یک
14
00:00:30,869 –> 00:00:33,809
نسخه متنی از این آموزش را دارم. یک
15
00:00:33,809 –> 00:00:35,670
لینک در توضیحات را امتحان کنید و ما
16
00:00:35,670 –> 00:00:37,280
سرور عنصر فلسفه را روی
17
00:00:37,280 –> 00:00:39,899
لوکال هاست اجرا می کنیم و ترمینال داریم، پس
18
00:00:39,899 –> 00:00:42,660
بیایید ادامه دهیم و floss run را انجام دهیم، می توانید ببینید
19
00:00:42,660 –> 00:00:44,399
اینجا در محیط توسعه
20
00:00:44,399 –> 00:00:47,789
هستیم و ویرایشگر خود را
21
00:00:47,789 –> 00:00:50,820
باز کرده ایم. چگونه فایلها را با فلاسک دانلود کنیم،
22
00:00:50,820 –> 00:00:53,969
ابتدا میخواهم به
23
00:00:53,969 –> 00:00:56,190
شما نشان دهم که باید به شما نشان دهم که من پیشروی کردهایم
24
00:00:56,190 –> 00:01:00,390
و تعدادی دایرکتوری در آن ایجاد کردهایم، بنابراین از
25
00:01:00,390 –> 00:01:02,699
دایرکتوری استاتیک یک
26
00:01:02,699 –> 00:01:05,339
دایرکتوری جدید به نام کلاینت و در داخل
27
00:01:05,339 –> 00:01:09,420
کلاینت ایجاد کردم. من یک CSV IMG PDF دریافت
28
00:01:09,420 –> 00:01:12,390
کردهام و دایرکتوری گزارش میدهم، بنابراین کاری که من در اینجا انجام میدهم
29
00:01:12,390 –> 00:01:15,299
اساساً این دایرکتوری مشتری است که
30
00:01:15,299 –> 00:01:20,189
در داخل استاتیک است.
31
00:01:20,189 –> 00:01:22,710
32
00:01:22,710 –> 00:01:24,840
33
00:01:24,840 –> 00:01:28,799
جایی که
34
00:01:28,799 –> 00:01:30,990
میخواهیم فایلهایمان را بگذاریم که میخواهیم کاربران
35
00:01:30,990 –> 00:01:33,210
بتوانند آنها را دانلود کنند، بنابراین در CSV من
36
00:01:33,210 –> 00:01:35,520
دو فایل CSV در IMG دارم، دو تصویر
37
00:01:35,520 –> 00:01:38,340
در PDF دارم، دو فایل PDF دارم و در گزارشها
38
00:01:38,340 –> 00:01:40,380
جلوتر رفتهام. و این نوع
39
00:01:40,380 –> 00:01:43,140
هود ساختار تودرتو را ایجاد کرد، بنابراین در گزارشها
40
00:01:43,140 –> 00:01:47,369
ما 20 17 18 و 19 داریم و در هر یک
41
00:01:47,369 –> 00:01:48,659
از آنها همان چیزی را
42
00:01:48,659 –> 00:01:52,310
فقط ژانویه در فوریه در خود دارند و در هر
43
00:01:52,310 –> 00:01:54,840
ژانویه و فوریه یک فهرست فروش دریافت میشود
44
00:01:54,840 –> 00:01:57,540
که دارای یک فهرست است. گزارش فروش،
45
00:01:57,540 –> 00:01:59,250
بنابراین میتوانید تصور کنید که اگر
46
00:01:59,250 –> 00:02:02,399
نوعی برنامه تجاری دارید که شاید
47
00:02:02,399 –> 00:02:05,670
بخواهید گزارشهایی را در یک
48
00:02:05,670 –> 00:02:07,170
کار پسزمینه تولید کنید، ما به زودی آن را
49
00:02:07,170 –> 00:02:08,639
پوشش خواهیم داد، بنابراین
50
00:02:08,639 –> 00:02:12,180
ممکن است بخواهید فقط این
51
00:02:12,180 –> 00:02:13,980
فایلها را خالی کنید. را وارد این فهرست کنید
52
00:02:13,980 –> 00:02:16,319
و سپس کل خود را مجاز کنید شبکه کسب و
53
00:02:16,319 –> 00:02:18,900
کار که بتوانید آنها را
54
00:02:18,900 –> 00:02:21,780
فقط با رفتن به یک URL دانلود کنید، بنابراین من ادامه می دهم
55
00:02:21,780 –> 00:02:25,200
و به شما نشان می دهم که چگونه این کار را انجام
56
00:02:25,200 –> 00:02:28,470
دهید، بنابراین بیایید ادامه دهیم و شروع کنیم و می
57
00:02:28,470 –> 00:02:30,269
توانید اینجا را ببینید که من در یک برنامه فلاسک هستم
58
00:02:30,269 –> 00:02:31,500
این همان برنامه ای است که ما داریم
59
00:02:31,500 –> 00:02:33,510
در طول این مجموعه استفاده کردهام، اما
60
00:02:33,510 –> 00:02:35,250
واقعاً مهم نیست که میتوانید ادامه دهید
61
00:02:35,250 –> 00:02:37,470
و یک مورد جدید را راهاندازی کنید یا آن را خودتان کار کنید
62
00:02:37,470 –> 00:02:39,930
و فقط آن را دنبال کنید، بنابراین
63
00:02:39,930 –> 00:02:42,780
برای کار با ارسال
64
00:02:42,780 –> 00:02:48,209
فایل باید از فلاسک چند چیز وارد کنیم. import و اکنون
65
00:02:48,209 –> 00:02:49,860
واقعاً تنها چیزی که باید وارد کنید
66
00:02:49,860 –> 00:02:53,760
ارسال از دایرکتوری است، اما من همچنین میروم
67
00:02:53,760 –> 00:02:57,959
و وارد کردن لغو میکنم و
68
00:02:57,959 –> 00:02:59,640
به شما نحوه استفاده از توپ و ارسال
69
00:02:59,640 –> 00:03:02,190
دایرکتوری را به زودی نشان میدهم، پس بیایید جلو برویم و
70
00:03:02,190 –> 00:03:05,519
یک فهرست ایجاد کنیم. مسیر، بنابراین اولین مسیری که
71
00:03:05,519 –> 00:03:08,040
میخواهم ایجاد کنم، میخواهم کاربران بتوانند
72
00:03:08,040 –> 00:03:11,849
به یک URL بروند و نام یک تصویر را وارد کنند
73
00:03:11,849 –> 00:03:14,340
و به محض اینکه آن URL
74
00:03:14,340 –> 00:03:16,319
را زدند، تصویر را دانلود میکند و
75
00:03:16,319 –> 00:03:18,180
اگر تصویر وجود نداشت. من می
76
00:03:18,180 –> 00:03:21,000
خواستم یک خطای 404 بزنم شما می دانید که فایل
77
00:03:21,000 –> 00:03:23,329
پیدا نشد، پس بیایید ادامه دهیم و این کار را انجام دهیم. o
78
00:03:23,329 –> 00:03:27,660
من آن را دریافت تصویر اسلش صدا
79
00:03:27,660 –> 00:03:30,900
میکنم و سپس میخواهیم یک متغیر در
80
00:03:30,900 –> 00:03:33,180
یورو ایجاد کنیم، بنابراین از دو فلش مخالف استفاده میکنیم
81
00:03:33,180 –> 00:03:36,329
و من فقط میخواهم نام این تصویر
82
00:03:36,329 –> 00:03:41,310
را درست مثل پس بگذارم، پس بیایید ادامه دهیم و آن را
83
00:03:41,310 –> 00:03:45,180
ایجاد کنیم تابع بنابراین دریافت تصویر و
84
00:03:45,180 –> 00:03:47,910
این نیز
85
00:03:47,910 –> 00:03:51,000
نام تصویر را می گیرد، اما قبل از اینکه جلوتر برویم، می خواهم
86
00:03:51,000 –> 00:03:52,709
به سرعت چیزی را بپوشانم،
87
00:03:52,709 –> 00:03:54,900
اما فکر نمی کنم قبل از
88
00:03:54,900 –> 00:04:00,329
آن یک قانون متغیر وجود داشته باشد، بنابراین قوانین
89
00:04:00,329 –> 00:04:05,310
متغیر راهی برای ایجاد آن هستند. یک مبدل در URL،
90
00:04:05,310 –> 00:04:10,709
بنابراین اگر میخواهید رشتهای را در اینجا ارسال
91
00:04:10,709 –> 00:04:12,720
کنید، مبدل آن را تبدیل میکند و
92
00:04:12,720 –> 00:04:15,599
مطمئن میشود که یک رشته است و اگر یک
93
00:04:15,599 –> 00:04:17,370
عدد صحیح است، مطمئن میشود که
94
00:04:17,370 –> 00:04:19,789
به یک نوع صحیح تبدیل شده است
95
00:04:19,789 –> 00:04:22,620
و چند عدد دیگر وجود دارد و کاری که من فکر می کنم
96
00:04:22,620 –> 00:04:25,060
انجام دهم این است که فقط یک
97
00:04:25,060 –> 00:04:27,220
رشته سند در اینجا ایجاد کنم و فقط آنها را لیست کنیم
98
00:04:27,220 –> 00:04:33,780
تا ما strewing داشته باشیم
99
00:04:33,780 –> 00:04:35,770
100
00:04:35,770 –> 00:04:41,410
، مسیر را داریم شناور کنیم و مسیر را داریم و uu را با D داریم بنابراین
101
00:04:41,410 –> 00:04:44,830
اینها پنج مبدل هستند و
102
00:04:44,830 –> 00:04:48,010
روشی که ما از آنها استفاده می کنیم این است که
103
00:04:48,010 –> 00:04:51,100
آن را به متغیری که انتظار داریم از قبل معلق کنیم.
104
00:04:51,100 –> 00:04:54,310
بنابراین به عنوان مثال در اینجا ما منتظر
105
00:04:54,310 –> 00:04:56,950
نوعی نام تصویر هستیم که میخواهیم یک
106
00:04:56,950 –> 00:05:00,610
رشته باشد، بنابراین به طور پیشفرض اگر بخواهم آن را خالی بگذارم، به
107
00:05:00,610 –> 00:05:01,360
108
00:05:01,360 –> 00:05:04,360
طور پیشفرض یک رشته خواهد بود، اما شما
109
00:05:04,360 –> 00:05:07,240
میتوانید به صراحت بگویید که
110
00:05:07,240 –> 00:05:10,510
به نوع رشته تبدیل میشود. string و من
111
00:05:10,510 –> 00:05:11,740
فکر می کنم کاری که من فقط برای نشان دادن این کار انجام خواهم داد
112
00:05:11,740 –> 00:05:15,700
چاپ نام تصویر است و در حال حاضر
113
00:05:15,700 –> 00:05:21,880
من فقط تشکر کرده ام، بنابراین اگر به
114
00:05:21,880 –> 00:05:27,910
تصویر دریافت خود برویم و فعلاً فقط نام خود را
115
00:05:27,910 –> 00:05:32,820
در آنجا برش می دهم آه چه کردم
116
00:05:37,740 –> 00:05:42,460
از فلاسک در بازرسی شده در بلوک تورفتگی
117
00:05:42,460 –> 00:05:44,640
118
00:05:55,479 –> 00:05:57,300
خوب است، من نمی دانم در آنجا چه اتفاقی افتاده است،
119
00:05:57,300 –> 00:05:59,680
به هر حال می توانید آن را ببینید، بنابراین
120
00:05:59,680 –> 00:06:03,490
متغیر ما همان بعد از ظهر چاپ شد و حالا اگر من
121
00:06:03,490 –> 00:06:06,789
بروم و فقط آن را برای چاپ
122
00:06:06,789 –> 00:06:12,009
نوع تصویر تغییر دهم، اکنون می توانید ببینید که
123
00:06:12,009 –> 00:06:16,629
چاپ می شود کلاس رشته، پس اگر
124
00:06:16,629 –> 00:06:21,159
بخواهیم تا یک عدد صحیح را به روز
125
00:06:21,159 –> 00:06:24,490
کنیم، چه میشود، فلاسک را دریافت میکنیم، خطا میدهد و
126
00:06:24,490 –> 00:06:26,620
این به این دلیل است که نوع مبدل کار نمیکند،
127
00:06:26,620 –> 00:06:29,919
میدانید که نمیتواند نام من
128
00:06:29,919 –> 00:06:32,770
Julien را به یک عدد صحیح تبدیل کند، اما اگر ما برای
129
00:06:32,770 –> 00:06:35,229
قرار دادن یک دو سه وجود دارد که
130
00:06:35,229 –> 00:06:37,060
با موفقیت بازگشت و هفتم en
131
00:06:37,060 –> 00:06:40,949
ما کلاس int را دریافت می کنیم، بنابراین اگر دوباره
132
00:06:40,949 –> 00:06:45,219
به float تغییر دهیم و سپس همین کار را
133
00:06:45,219 –> 00:06:47,860
انجام دهیم، یک خطا دریافت می کنیم، اما اگر
134
00:06:47,860 –> 00:06:50,649
یک نقطه اعشار را در آنجا قرار دهیم، می رویم
135
00:06:50,649 –> 00:06:52,599
که کار می کند و اکنون کلاس float را دریافت می کنیم.
136
00:06:52,599 –> 00:06:53,589
137
00:06:53,589 –> 00:06:58,120
در مورد مسیر چطور است، پس بیایید جلوتر برویم
138
00:06:58,120 –> 00:07:01,300
و آن را به مسیر تغییر دهیم و این در
139
00:07:01,300 –> 00:07:04,779
واقع یک مسیر را در اینجا فراهم می کند، بنابراین
140
00:07:04,779 –> 00:07:12,430
تصویر اسلش من نقطه jpg شما می توانید
141
00:07:12,430 –> 00:07:15,939
اینجا را ببینید که یک رشته است و ما هیچ
142
00:07:15,939 –> 00:07:18,909
خطایی که کاملاً خوب کار می کند و در
143
00:07:18,909 –> 00:07:21,129
واقع اگر زیر باشد، دریافت نمی کنیم که من پیش میروم و
144
00:07:21,129 –> 00:07:27,009
نام تصویر را چاپ میکنم، میتوانید اینجا ببینید که
145
00:07:27,009 –> 00:07:30,699
در واقع رشته را با
146
00:07:30,699 –> 00:07:35,709
تمام اسلشها چاپ میکند، بنابراین منطقی است که اگر
147
00:07:35,709 –> 00:07:38,259
از این نوع مبدلها آگاه
148
00:07:38,259 –> 00:07:40,270
نبودید، فکر میکردید در اینجا به
149
00:07:40,270 –> 00:07:41,919
نوعی خطا به این دلیل که ما
150
00:07:41,919 –> 00:07:44,849
مسیری را در برنامه خود کدگذاری نکرده ایم تا
151
00:07:44,849 –> 00:07:47,830
بپذیریم شما می دانید دریافت تصویر اسلش
152
00:07:47,830 –> 00:07:49,569
چیزی اسلش بریده بریده چیزی بریده بریده
153
00:07:49,569 –> 00:07:52,089
چیزی درست است، اما چون ما
154
00:07:52,089 –> 00:07:56,709
این مبدل مسیر را در اینجا اضافه کرده ایم فلاسک می داند که
155
00:07:56,709 –> 00:07:59,740
انتظار دارد مسیری بعد از دریافت تصویر وارد شود،
156
00:07:59,740 –> 00:08:02,499
بنابراین بسیار بسیار مفید است. و ما از آن
157
00:08:02,499 –> 00:08:06,009
در o استفاده خواهیم کرد مثال شما در مدت کوتاهی زمانی که ما به جلو می رویم
158
00:08:06,009 –> 00:08:08,790
و گزارش های تودرتوی خود را می اندازیم
159
00:08:08,790 –> 00:08:11,160
که از این متغیر مسیر استفاده می کنیم و
160
00:08:11,160 –> 00:08:17,010
UUID فقط یک نمونه از یک UUID است، من
161
00:08:17,010 –> 00:08:22,920
فقط پیش می روم و یکی را در اینجا کپی می کنم،
162
00:08:22,920 –> 00:08:26,070
آن را در آن جایگذاری می کنم و شما می توانید ببینید که
163
00:08:26,070 –> 00:08:27,390
کار کرده است و یک
164
00:08:27,390 –> 00:08:30,330
UUID فقط یک نوع شناسه است که در
165
00:08:30,330 –> 00:08:33,900
سرتاسر وب سایت استفاده می شود و می توانید ببینید که در
166
00:08:33,900 –> 00:08:37,559
واقع کلاس خودش است، بنابراین
167
00:08:37,559 –> 00:08:39,000
انواع مبدل های مختلفی وجود دارد که می توانید
168
00:08:39,000 –> 00:08:42,120
استفاده کنید و بسیار مفید هستند، بنابراین من می
169
00:08:42,120 –> 00:08:44,370
خواهم ادامه دهید و در واقع میتوانیم آن را فعلاً آنجا بگذاریم،
170
00:08:44,370 –> 00:08:47,220
بنابراین من
171
00:08:47,220 –> 00:08:49,680
فقط یک نام تصویر ساده و ساده
172
00:08:49,680 –> 00:08:51,410
میخواهم، بنابراین آن را به عنوان نام تصویر
173
00:08:51,410 –> 00:08:53,430
میگذارم، زیرا نمیخواهم مسیری را ارائه دهند،
174
00:08:53,430 –> 00:08:58,170
من فقط یک تصویر میخواهم. بنابراین،
175
00:08:58,170 –> 00:09:00,330
کاری که میخواهم انجام دهم، قبل از اینکه واقعاً
176
00:09:00,330 –> 00:09:03,030
شروع به ارسال فایلها کنیم، این است که
177
00:09:03,030 –> 00:09:08,100
میخواهم این فهرست تصویر را
178
00:09:08,100 –> 00:09:13,080
در اینجا به پیکربندی برنامه خود اضافه کنم، بنابراین پیکربندی برنامه و
179
00:09:13,080 –> 00:09:16,680
من میخواهم این تصاویر مشتری را صدا کنم و
180
00:09:16,680 –> 00:09:19,500
سپس میروم. تا به آن مسیری به این
181
00:09:19,500 –> 00:09:20,310
دایرکتوری
182
00:09:20,310 –> 00:09:24,420
بدهم، بنابراین من در یک دایرکتوری پایه قابل اعتماد int کدنویسی می کنم
183
00:09:24,420 –> 00:09:27,960
o پیکربندی برنامه ما، بنابراین
184
00:09:27,960 –> 00:09:28,950
کاری که میخواهم انجام
185
00:09:28,950 –> 00:09:31,380
دهم، فقط میخواهم بالا را متوقف کنم و سیدی
186
00:09:31,380 –> 00:09:39,030
را به برنامه static client IMG بروم و سپس
187
00:09:39,030 –> 00:09:41,850
PWD را برای چاپ دایرکتوری کاری انجام
188
00:09:41,850 –> 00:09:44,430
دهم، بنابراین این اینجا به من یک فایل کامل میدهد.
189
00:09:44,430 –> 00:09:49,170
مسیر به دایرکتوری مورد اعتماد من ادامه
190
00:09:49,170 –> 00:09:51,540
دهید و در حال حاضر اگر
191
00:09:51,540 –> 00:09:55,830
این را در مرحله تولید اجرا میکنید، پیشنهاد میکنم این کار را
192
00:09:55,830 –> 00:09:58,890
در پیکربندی برنامه خود در جایی انجام دهید تا
193
00:09:58,890 –> 00:10:00,690
بدانید در سرور توسعه خود
194
00:10:00,690 –> 00:10:03,450
مسیر را در تولید خود قرار دهید.
195
00:10:03,450 –> 00:10:05,850
سرور شما، بنابراین
196
00:10:05,850 –> 00:10:08,070
197
00:10:08,070 –> 00:10:11,220
بسته به
198
00:10:11,220 –> 00:10:12,420
اینکه به صورت محلی در
199
00:10:12,420 –> 00:10:14,630
حال اجرا هستید یا در حال تولید هستید، احتمالاً دو مسیر متفاوت به آن دایرکتوری خواهید داشت، بنابراین
200
00:10:14,630 –> 00:10:17,160
ادامه دهید و آن را به پیکربندی برنامه خود اضافه کنید،
201
00:10:17,160 –> 00:10:18,690
اما در حال حاضر من فقط میخواهیم آن را
202
00:10:18,690 –> 00:10:19,040
اینجا
203
00:10:19,040 –> 00:10:23,600
در دیدگاههای خود اضافه کنیم، بنابراین
204
00:10:23,600 –> 00:10:27,589
ما فهرست خود را داریم، نام
205
00:10:27,589 –> 00:10:29,810
نواری داریم که از یورو میآید، پس چگونه میتوانیم
206
00:10:29,810 –> 00:10:31,940
آن را برگردانیم، بنابراین بیایید ادامه دهیم
207
00:10:31,940 –> 00:10:33,019
و این را ببندیم تا فضای کمی بیشتر گرفتم،
208
00:10:33,019 –> 00:10:34,970
بنابراین کاری که میخواهم انجام دهم این است که
209
00:10:34,970 –> 00:10:37,970
یک امتحان ایجاد کنم و blo را بپذیرم ck من می خواهم سعی کنم و
210
00:10:37,970 –> 00:10:39,949
اگر تصویر وجود نداشته باشد تصویر را دریافت
211
00:10:39,949 –> 00:10:42,829
کنم می خواهم یک خطای 404 بزنم که
212
00:10:42,829 –> 00:10:46,750
آن فایل وجود ندارد پس بیایید امتحان کنیم
213
00:10:46,7