• 1404/05/11

اپیزود 63 - with :

سلام استاد. وقت بخیر. استاد وقتی میخاستین product item partial یا همون کارت یا باکس محصول رو include کنید، کانتکست product رو با دستور with بهش ارسال کردید. 

{% for product in products %}
   {% include 'includes/product_item_partial.html' with product=product %}
{% endfor %}

در صورتی که طبق آموزش خودتون در اوایل دوره این مورد اصلاً نیاز نیست. خب ما خودمونم با with آیتم حلقه رو بفرستیم، باز هم فارغ از این، partial به عناصر parent خودش دسترسی داره


دارین  اون رو به نام جدیدی مثلا product  پاس می‌دین.

این کار هیچ تاثیری روی بقیه متغیرهای parent نداره؛ اونا همچنان قابل دسترسی هستن.

with فقط برای rename کردن یا explicit کردن داده‌ها استفاده می‌شه.

 

از ویدئوی 63 به بعد شاید به خاطر مشغله ی زیاد و حوزه های کاری مختلف مثل دات نت و .. بعضی از نکات رو فراموش کردید. یا خیلی بازش نکردین

 

  • 1404/05/11
  • ساعت 20:43

سلام خدمت شما دوست عزیز

ببینین شما این مورد رو به اشتباه برداشت کردین

اگر دستور with استفاده نشه ، شما داخل product_item_partial.html به products دسترسی دارین نه product

این یعنی شما به لیست محصولات دسترسی دارید نه یک محصول

در حالی که ما در این فایل html باید یک product رو نمایش بدیم پس باید حتما با استفاده از with متغیر product رو که توی حلقه ایجاد شده به فایل html پاس بدیم

در مورد صحبت نکردن درباره موضوعات مختلف جنگو باید بگم که این فریم ورک به شدت بزرگ هستش و واقعا نمیشه در یک دوره همه مطالب مربوط به این فریم ورک رو بررسی کرد چرا که دوره به بیش از 300 ساعت یا حتی بیشتر نیاز داره که این موضوع بنا به تجربه ی بنده باعث عدم ادامه دوره توسط دانشجوها میشه.

مطالب پیشرفته تر رو سعی میکنم در دوره های مجزا در سایت منتشر کنم تا بتونین ازشون استفاده کنین

موفق باشین :)


  • 1404/05/12
  • ساعت 14:37

خب استاد با احترام، اشتباهه این مورد

بایدی در کار نیست.
شما متوجه عرض بنده نشدید. وقتی در صفحه لیست محصولات یه حلقه مینویسیم:

{% for product in products %}
	{% include 'includes/product_item_partial.html' with product=product %}
{% endfor %}

همونطور که اشاره کردیدproduct_item_partial.html به کانتکست این صفحه دسترسی داره. یعنی همونطور که به products دسترسی داره به آیتم حلقه یعنی product  هم دسترسی داره. امتحان کنید!

میتونید داک رسمی رو هم بررسی کنید.

میگه اینکار نیاز نیست مگر زمانی که بخایم این آیتم با اسم جدیدی تو قطعه اینکلود شده در دسترس باشه!


  • 1404/05/12
  • ساعت 14:46

بله درست هستش

به عنوان alias میتونین ازش استفاده کنین

در include اگر متغیری داشته باشین که توی html داخلی با همون اسم استفاده شده باشه میتونین نام متغیر رو ارسال نکنین

موفق باشین


logo-enamadlogo-samandehi