در این مطلب، ویدئو 17 – قالب های جنگو – سری آموزش پایتون و جنگو 3.2 با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:17:37
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,080 –> 00:00:01,040
بسیار خوب، اکنون ما قصد داریم
2
00:00:01,040 –> 00:00:02,960
در مورد اصول اولیه قالب جنگو صحبت کنیم،
3
00:00:02,960 –> 00:00:04,400
اما قبل از انجام این کار، من میخواهم
4
00:00:04,400 –> 00:00:06,560
نحوه انجام این
5
00:00:06,560 –> 00:00:08,480
جایگزینی رشته را تنظیم کنم تا کمی
6
00:00:08,480 –> 00:00:11,440
بیشتر در مورد نحوه عملکرد
7
00:00:11,440 –> 00:00:12,719
قالبها عمل کنیم. من میروم
8
00:00:12,719 –> 00:00:14,480
و فقط این رشتهها را در یک رشته بزرگ ترکیب میکنم
9
00:00:14,480 –> 00:00:16,880
و فقط آن رشته html ما را صدا
10
00:00:16,880 –> 00:00:20,320
میزنیم و آن چیزها را به درستی حذف
11
00:00:20,320 –> 00:00:22,480
میکنم، فکر میکنم نسبتاً ساده است
12
00:00:22,480 –> 00:00:24,000
و سپس میخواهم از یک
13
00:00:24,000 –> 00:00:26,320
نسخه قدیمیتر جایگزینی رشته استفاده کنم.
14
00:00:26,320 –> 00:00:27,680
روش قالب بندی
15
00:00:27,680 –> 00:00:30,720
بنابراین قالب به ما امکان می دهد از جفت های مقادیر کلیدی استفاده کنیم
16
00:00:30,720 –> 00:00:33,040
این یکی از راه های استفاده از آن است
17
00:00:33,040 –> 00:00:34,719
تا بتوانیم در واقع از شر
18
00:00:34,719 –> 00:00:37,600
خود شیء مقاله خلاص شویم و فقط
19
00:00:37,600 –> 00:00:39,840
کاری را در همین راستا انجام دهیم و همچنین
20
00:00:39,840 –> 00:00:42,320
با قالب کاری که می توانیم انجام دهیم استفاده از
21
00:00:42,320 –> 00:00:44,079
فرهنگ لغت است. در این مورد من آن را
22
00:00:44,079 –> 00:00:46,800
زمینه با همان جفتهای ارزش کلیدی
23
00:00:46,800 –> 00:00:49,120
درست مینامم تا بتوانم از عنوان و سپس
24
00:00:49,120 –> 00:00:53,160
مقاله object.title و سپس id
25
00:00:53,160 –> 00:00:55,600
articleobject.id و سپس
26
00:00:55,600 –> 00:00:56,800
محتوای
27
00:00:56,800 –> 00:00:58,879
همان چیزی را
28
00:00:58,879 –> 00:01:01,440
درست مثل آن و سپس با این قالب استفاده کنم.
29
00:01:01,440 –> 00:01:03,600
تماس بگیرید من میتوانم این را با آن دو
30
00:01:03,600 –> 00:01:06,320
ستاره باز کنم و این زمینه
31
00:01:06,320 –> 00:01:08,880
را به عنوان اشیاء قالببندی شده در اینجا باز میکند، بنابراین وقتی
32
00:01:08,880 –> 00:01:11,119
آن را ذخیره میکنیم و به پروژه خود نگاه میکنیم،
33
00:01:11,119 –> 00:01:13,680
با فرض اینکه هنوز
34
00:01:13,680 –> 00:01:16,080
در حال اجرا است،
35
00:01:17,280 –> 00:01:19,520
میتوانیم ببینیم که هنوز هم درست کار
36
00:01:19,520 –> 00:01:22,000
میکند و بنابراین این در
37
00:01:22,000 –> 00:01:24,000
واقع ما را برای استفاده از
38
00:01:24,000 –> 00:01:26,159
قالبهای جنگو به طور کلی آماده میکند، اما یکی از
39
00:01:26,159 –> 00:01:28,799
چیزهایی که باید بدانیم این است که
40
00:01:28,799 –> 00:01:32,079
پایتون خود میتواند
41
00:01:32,079 –> 00:01:35,360
مسئول فایلی باشد که در واقع این رشته را نگه میدارد،
42
00:01:35,360 –> 00:01:37,040
به عبارت دیگر اگر ما واقعاً از
43
00:01:37,040 –> 00:01:39,840
یکی از قالبهای داخلی استفاده کنیم. باز کنید،
44
00:01:39,840 –> 00:01:41,960
به عنوان مثال my
45
00:01:41,960 –> 00:01:43,759
template.html
46
00:01:43,759 –> 00:01:45,920
um شما با خواندن میدانید و ما میتوانیم
47
00:01:45,920 –> 00:01:48,479
این را روی f و همه آن
48
00:01:48,479 –> 00:01:51,360
و سپس خود متن را تنظیم کنیم، بنابراین
49
00:01:51,360 –> 00:01:54,079
رشته f.read است، شما میدانید که ما میتوانیم به
50
00:01:54,079 –> 00:01:56,719
طور بالقوه از همان رشته در آن استفاده کنیم.
51
00:01:56,719 –> 00:01:59,600
فایل بسیار شبیه به این درست است، بنابراین من
52
00:01:59,600 –> 00:02:01,840
واقعاً این کار را انجام نمیدهم،
53
00:02:01,840 –> 00:02:03,600
زیرا این بهترین راه برای استفاده از
54
00:02:03,600 –> 00:02:05,600
قالبهای جنگو نیست، اما ایده کلی هنوز
55
00:02:05,600 –> 00:02:07,759
وجود دارد، ما در حال باز کردن فایل هستیم و در
56
00:02:07,759 –> 00:02:09,280
حال خواندن آن هستیم و سپس ما
57
00:02:09,280 –> 00:02:11,599
در آن زمینه به
58
00:02:11,599 –> 00:02:15,360
رشتهای که در داخل آن فایل است رندر میدهیم، اکنون
59
00:02:15,360 –> 00:02:17,200
قالبهای جنگو بسیار شبیه آن هستند، اما
60
00:02:17,200 –> 00:02:19,440
آن را به سطح دیگری میبرند، بنابراین
61
00:02:19,440 –> 00:02:20,800
کاری که من میخواهم انجام دهم این است که
62
00:02:20,800 –> 00:02:22,879
البته همینجا از شر آن خلاص میشوم. واقعاً میخواهید
63
00:02:22,879 –> 00:02:25,920
فایلی ایجاد کنید که این دادهها را در خود نگه دارد،
64
00:02:25,920 –> 00:02:27,040
65
00:02:27,040 –> 00:02:28,879
بنابراین برای ایجاد این فایل، سؤال این
66
00:02:28,879 –> 00:02:31,680
است که ما واقعاً آن را در کجا قرار میدهیم، یک کار
67
00:02:31,680 –> 00:02:33,920
بسیار متداول این است که در داخل
68
00:02:33,920 –> 00:02:35,599
پروژه خود پوشهای
69
00:02:35,599 –> 00:02:36,480
به نام
70
00:02:36,480 –> 00:02:39,440
templates بسازید تا این پوشه اکنون تمام
71
00:02:39,440 –> 00:02:41,680
قالب های جنگو خود را
72
00:02:41,680 –> 00:02:43,760
در اکثر موارد نگه دارید و اکنون می توانید آن را
73
00:02:43,760 –> 00:02:45,599
در داخل برنامه ها نیز قرار دهید که بعداً در مورد آن صحبت خواهیم کرد،
74
00:02:45,599 –> 00:02:47,760
اما فعلاً
75
00:02:47,760 –> 00:02:50,160
فقط در قالب یک پوشه برای نگه داشتن
76
00:02:50,160 –> 00:02:52,400
همه الگوهایی که ممکن است استفاده کنید فکر کنید.
77
00:02:52,400 –> 00:02:54,080
اکنون در این مورد، این فقط
78
00:02:54,080 –> 00:02:56,400
یک الگوی بسیار ساده برای رندر کردن
79
00:02:56,400 –> 00:02:58,480
مانند یک شی مقاله است، اما البته اگر بخواهیم میتوانیم
80
00:02:58,480 –> 00:03:00,640
دادههای بیشتری به آن اضافه کنیم،
81
00:03:00,640 –> 00:03:01,599
82
00:03:01,599 –> 00:03:03,440
بنابراین بیایید ادامه دهیم و نگاهی به
83
00:03:03,440 –> 00:03:04,400
84
00:03:04,400 –> 00:03:06,560
تبدیل این دادهها به یک الگو
85
00:03:06,560 –> 00:03:08,480
بیندازیم. از اینجا من می روم t o ادامه دهید
86
00:03:08,480 –> 00:03:13,480
و این را home.html یا واقعاً home dash
87
00:03:13,480 –> 00:03:15,760
view.html را صدا بزنید و تنها دلیلی که من
88
00:03:15,760 –> 00:03:18,239
آن را خانه dash view می نامم به
89
00:03:18,239 –> 00:03:21,120
دلیل نام تابع در این مورد است،
90
00:03:21,120 –> 00:03:23,120
بنابراین اکنون داخل آن می خواهم بروم.
91
00:03:23,120 –> 00:03:25,040
92
00:03:25,040 –> 00:03:27,440
یکی از
93
00:03:27,440 –> 00:03:28,799
چیزهای جالبی که باید به آن توجه کنید
94
00:03:28,799 –> 00:03:31,920
این است که یک صفحه html است، به این
95
00:03:31,920 –> 00:03:35,200
معنی که اکثر ویرایشگرهای متن، اگر نه همه ویرایشگرهای متن
96
00:03:35,200 –> 00:03:37,280
،
97
00:03:37,280 –> 00:03:38,879
کمک نحوی برای شما
98
00:03:38,879 –> 00:03:41,760
در داخل یک صفحه html داشته باشند. حتی در مقابل کد،
99
00:03:41,760 –> 00:03:43,760
همانطور که در اینجا می بینیم، در پایین می گوید html
100
00:03:43,760 –> 00:03:46,640
و این بیشتر درست است،
101
00:03:46,640 –> 00:03:48,879
بنابراین بیشتر از نظر شرایط دقیق است
102
00:03:48,879 –> 00:03:51,680
که فقط html است
103
00:03:51,680 –> 00:03:53,680
، بخشی که دقیق نیست
104
00:03:53,680 –> 00:03:56,480
این است که فقط html نیست، در واقع
105
00:03:56,480 –> 00:03:58,799
یک جنگو است. الگو به این معنی است که ما
106
00:03:58,799 –> 00:04:00,799
باید داده های اضافی را به این
107
00:04:00,799 –> 00:04:02,720
الگو اضافه کنیم که به آن باز می گردیم،
108
00:04:02,720 –> 00:04:05,120
اما در حال حاضر ما در واقع فایلی داریم
109
00:04:05,120 –> 00:04:07,200
که در آن الگو زندگی می کند، اما جنگو
110
00:04:07,200 –> 00:04:09,200
از آن پوشه
111
00:04:09,200 –> 00:04:10,560
اطلاعی ندارد و از این الگو اطلاعی ندارد.
112
00:04:10,560 –> 00:04:13,680
دایرکتوری بنابراین ما باید به jango اطلاع دهیم
113
00:04:13,680 –> 00:04:15,680
و در f به روشی بسیار مشابه عمل کنید
114
00:04:15,680 –> 00:04:16,959
که ما به
115
00:04:16,959 –> 00:04:19,279
jano در مورد برنامه نصب شده خود اطلاع دادیم، بنابراین
116
00:04:19,279 –> 00:04:21,120
ما این گزینه پیکربندی را برای
117
00:04:21,120 –> 00:04:22,880
برنامه های نصب شده داشتیم و مقالاتی را در آنجا اضافه کردیم
118
00:04:22,880 –> 00:04:25,040
، اگر کمی به پایین اسکرول کنیم می بینیم
119
00:04:25,040 –> 00:04:27,600
که یک پیکربندی الگوها
120
00:04:27,600 –> 00:04:31,360
و یک کلید به نام durs as وجود دارد. در دایرکتوریها،
121
00:04:31,360 –> 00:04:33,759
بنابراین ما واقعاً میتوانیم آن دایرکتوریها را
122
00:04:33,759 –> 00:04:35,919
در اینجا اضافه کنیم، البته چند گزینه دیگر نیز
123
00:04:35,919 –> 00:04:38,000
وجود دارد که
124
00:04:38,000 –> 00:04:40,160
نیازی به بحث در مورد آنها نیست، اما ایده
125
00:04:40,160 –> 00:04:42,639
اینجاست که باید جنگو را با
126
00:04:42,639 –> 00:04:44,720
دانستن دایرکتوری این الگو بهروزرسانی کنیم،
127
00:04:44,720 –> 00:04:47,520
بنابراین قبل از رفتن در حفره خرگوش
128
00:04:47,520 –> 00:04:49,440
نحوه انجام صحیح این کار، اجازه دهید این کار را اشتباه انجام دهیم،
129
00:04:49,440 –> 00:04:51,520
بنابراین من میروم و
130
00:04:51,520 –> 00:04:54,639
مسیر را کپی میکنم تا بتوانید روی
131
00:04:54,639 –> 00:04:57,360
آن مسیر را کپی کنید یا روی آن کلیک
132
00:04:57,360 –> 00:04:59,919
راست کنید و سپس آن را در یک رشته قرار دهید.
133
00:04:59,919 –> 00:05:01,840
البته این مسیر
134
00:05:01,840 –> 00:05:03,840
دایرکتوری در دستگاه من است و اگر شما این کار
135
00:05:03,840 –> 00:05:05,840
را روی دستگاه خود انجام داده باشید،
136
00:05:05,840 –> 00:05:09,280
دایرکتوری روی دستگاه شما خواهد بود، بنابراین اکنون جنگو
137
00:05:09,280 –> 00:05:12,639
می داند که در کجا لیست الگوها وجود دارد یا
138
00:05:12,639 –> 00:05:14,479
متوجه می شود که آن را در یک لیست قرار داده اید.
139
00:05:14,479 –> 00:05:17,440
ما میتوانیم مکانهای متعددی
140
00:05:17,440 –> 00:05:20,160
برای این الگوها داشته باشیم که همچنین واقعاً
141
00:05:20,160 –> 00:05:20,960
جالب است
142
00:05:20,960 –> 00:05:23,600
و جنگو قرار است آنها را به
143
00:05:23,600 –> 00:05:24,400
144
00:05:24,400 –> 00:05:26,960
ترتیبی که آنها را اینجا قرار میدهید بررسی کند، بنابراین
145
00:05:26,960 –> 00:05:29,759
اگر آن را به این صورت قرار دهید
146
00:05:29,759 –> 00:05:32,240
و سپس ممکن است یکی دیگر
147
00:05:32,240 –> 00:05:35,520
بگویید مانند django 1.11 یا چیزی
148
00:05:35,520 –> 00:05:37,520
شبیه به آن را امتحان کنید. درست است که شما
149
00:05:37,520 –> 00:05:39,360
کاملاً توانایی انجام این کار را به این ترتیب
150
00:05:39,360 –> 00:05:40,720
خواهید داشت، فقط میروید این جایی است که
151
00:05:40,720 –> 00:05:42,479
ابتدا بررسی میشود این جایی است که من بررسی میکنم،
152
00:05:42,479 –> 00:05:44,240
دوم توضیح میدهم که وقتی
153
00:05:44,240 –> 00:05:47,120
واقعاً یک بررسی الگو را انجام
154
00:05:47,120 –> 00:05:49,199
دادیم تا الان ما یک مکان
155
00:05:49,199 –> 00:05:51,520
برای الگوهای خود داریم، بسیار خوب، بنابراین
156
00:05:51,520 –> 00:05:54,000
اکنون باید به نمای خود بازگردیم، اکنون باید از آن الگو استفاده کنیم،
157
00:05:54,000 –> 00:05:55,759
ممکن است وسوسه شوید که از آن
158
00:05:55,759 –> 00:05:58,160
روش باز استفاده کنید، همانطور که قبلاً به شما نشان دادم،
159
00:05:58,160 –> 00:06:00,160
اما در واقع این راهی نیست که
160
00:06:00,160 –> 00:06:02,319
ما میخواهیم آن را انجام دهیم. برای استفاده از متد داخلی جنگو
161
00:06:02,319 –> 00:06:05,280
برای انجام این کار و بنابراین چه
162
00:06:05,280 –> 00:06:07,759
باید کرد روش داخلی واقعی آنچه
163
00:06:07,759 –> 00:06:10,400
میخواهیم این است که میخواهیم از یک
164
00:06:10,400 –> 00:06:12,000
میانبر
165
00:06:12,000 –> 00:06:14,560
استفاده کنیم تا زمینه و نام قالب
166
00:06:14,560 –> 00:06:16,880
خود را بگیریم و آن را به یک رشته تبدیل
167
00:06:16,880 –> 00:06:19,120
کنیم. نام
168
00:06:19,120 –> 00:06:21,280
رن نامیده می شود
169
00:06:21,280 –> 00:06:22,240
از
170
00:06:22,240 –> 00:06:25,120
django.template.loader
171
00:06:25,120 –> 00:06:27,280
ما رندر را
172
00:06:27,280 –> 00:06:29,039
به رشته وارد می کنیم،
173
00:06:29,039 –> 00:06:31,520
بنابراین این یک روش میانبری است که
174
00:06:31,520 –> 00:06:34,319
به ما امکان می دهد اساساً همه این کارها را
175
00:06:34,319 –> 00:06:37,440
با یک اخطار انجام دهیم. خود قالب
176
00:06:37,440 –> 00:06:38,319
177
00:06:38,319 –> 00:06:39,919
پس اکنون کاری که می خواهم انجام دهم این است که بگویم
178
00:06:39,919 –> 00:06:43,759
رشته html برابر است با رندر کردن به رشته
179
00:06:43,759 –> 00:06:45,440
و اکنون ادامه می دهیم و
180
00:06:45,440 –> 00:06:46,479
نام قالب را فقط home dash
181
00:06:46,479 –> 00:06:49,280
home-view.html می نویسیم.
182
00:06:49,280 –> 00:06:51,039
183
00:06:51,039 –> 00:06:52,400
ما می رویم
184
00:06:52,400 –> 00:06:55,199
و سپس در اینجا می توانم در فرهنگ لغت متن نیز ارسال کنم
185
00:06:55,199 –> 00:06:58,160
تا متن برابر
186
00:06:58,160 –> 00:07:00,240
با متغیر متنی
187
00:07:00,240 –> 00:07:03,120
باشد که در اینجا درست تنظیم کردم و بنابراین
188
00:07:03,120 –> 00:07:04,720
اکنون می خواهم ادامه دهم و
189
00:07:04,720 –> 00:07:07,120
این مورد را دقیقاً مانند آن نظر بدهم
190
00:07:07,120 –> 00:07:08,880
و ما نگاهی بیندازیم خوب است، پس
191
00:07:08,880 –> 00:07:10,960
بیایید مطمئن شویم همه چیز ذخیره شده است
192
00:07:10,960 –> 00:07:12,080
و مطمئن شویم سرور ما در
193
00:07:12,080 –> 00:07:12,960
حال اجرا است
194
00:07:12,960 –> 00:07:15,199
و من دوباره وارد می شوم و
195
00:07:15,199 –> 00:07:16,880
یک دقیقه صبر می کنم که در واقع
196
00:07:16,880 –> 00:07:18,560
محتوا را رندر نمی کند
197
00:07:18,560 –> 00:07:21,039
اکنون چیزی را درست رندر می کند بنابراین
198
00:07:21,039 –> 00:07:23,840
در واقع html معتبری را به من نشان می دهد.
199
00:07:23,840 –> 00:07:26,479
این در واقع جایگزینی را انجام نمی
200
00:07:26,479 –> 00:07:28,240
دهد آیا باید آن جایگزینی رشته را انجام نمی دهد، همانطور که
201
00:07:28,240 –> 00:07:30,479
من
202
00:07:30,479 –> 00:07:32,560
از اینجا انتظار می رود
203
00:07:32,560 –> 00:07:35,680
و اینجاست که 100 یک الگوی جنگو است
204
00:07:35,680 –> 00:07:38,800
و نه یک صفحه html استاندارد
205
00:07:38,800 –> 00:07:39,919
و اینطور است
206
00:07:39,919 –> 00:07:40,960
که
207
00:07:40,960 –> 00:07:43,919
همه متغیرهای زمینه ما در اینجا یا
208
00:07:43,919 –> 00:07:45,919
همه این متغیرها در واقع چگونه به
209
00:07:45,919 –> 00:07:47,759
دست می آیند. رندر شده است، بنابراین اگر آن را به درستی انجام ندهید،
210
00:07:47,759 –> 00:07:51,039
آنها به این شکل رندر می شوند، بنابراین
211
00:07:51,039 –> 00:07:52,960
بیایید آن را به درستی انجام دهیم
212
00:07:52,960 –> 00:07:55,520
، ساده ترین راه برای انجام این کار استفاده از
213
00:07:55,520 –> 00:07:56,800
214
00:07:56,800 –> 00:07:59,520
براکت های دوتایی مجعد مانند آن در جلو
215
00:07:59,520 –> 00:08:00,720
و پشت است
216
00:08:00,720 –> 00:08:03,280
و بنابراین ما می توانیم این کار را
217
00:08:03,280 –> 00:08:05,120
دقیقاً به این صورت انجام دهیم و در واقع اگر
218
00:08:05,120 –> 00:08:07,199
روی یکی از متغیرها دوبار کلیک کنید و
219
00:08:07,199 –> 00:08:10,560
shift و براکت فرفری را فشار دهید،
220
00:08:10,560 –> 00:08:12,720
دقیقاً به همین شکل وارد میشود
221
00:08:12,720 –> 00:08:14,879
و حالا که آن را ذخیره میکنم
222
00:08:14,879 –> 00:08:16,400
برمیگردم و Refresh میکنم و اکنون در واقع
223
00:08:16,400 –> 00:08:17,440
کار میکند،
224
00:08:17,440 –> 00:08:18,800
بنابراین کلید اینجا با
225
00:08:18,800 –> 00:08:21,440
الگوها است. بنابراین در داخل جنگو
226
00:08:21,440 –> 00:08:23,759
وقتی می خواهید از الگوها استفاده
227
00:08:23,759 –> 00:08:25,440
کنید، در واقع باید از این
228
00:08:25,440 –> 00:08:27,440
براکت های فرفری دوتایی استفاده کنید و اغلب اوقات
229
00:08:27,440 –> 00:08:29,840
بین نام متغیر و غیره فاصله می بینید،
230
00:08:29,840 –> 00:08:31,680
231
00:08:31,680 –> 00:08:34,080
بنابراین این خوب است، من واقعاً این واقعیت را دوست دارم.
232
00:08:34,080 –> 00:08:36,240
در من واقعاً می توانم داده ها را به
233
00:08:36,240 –> 00:08:37,919
این روش ارائه دهم و همانطور که می بینیم این یک راه بسیار
234
00:08:37,919 –> 00:08:40,880
ساده و آسان برای انجام آن است اکنون
235
00:08:40,880 –> 00:08:43,279
یک راه دیگر را ذکر می کنم زیرا خوب
236
00:08:43,279 –> 00:08:44,959
است بدانید که