وقت بخیر استاد.
اول از هرچیزی لازم تشکر کنم ازتون خیلی در زمینه جنگو به من کمک کردید امیدوارم حالتون همیشه عالی باشه.
من در فایل url یک path با این مشخصات دارم
path('/<cat/<cat>/tag/<tag>/', views.ProductListView.as_view(), name='product-tag-list')
نیاز دارم که مقدار کت رو از طریق url بدست بیارم از request.GET.get('cat) استفاده کردم none بر میگردوند.
دستور request.GET رو پرینت کردم <QueryDict: {}> برگردوند.
مقدار کت رو به این شکل به فانکشن دادم
: def Product_tags_component(request:HttpRequest,cat)
این رو گفت : Product_tags_component() missing 1 required positional argument: 'cat'
چطور می تونم از طریق url مقدایر رو بگیرم قاعدتا نباید مشکلی وجود داشته باشه خیلی ممنون میشم کمکم کنید.
سلام دوست من
خوشحالم دوره براتون مفید بوده
مشکل فکر میکنم از این هستش که شما 2 تا cat با اسم یکسان در url تعریف کردین و به مشکل خورده
خیر.
نام هارو تغییر دادم فرقی ایجاد نشد
خطا مربوط به product tags component هستش
گویا یک متغیر الزامی با نام cat باید برای این متد ارسال بشه که ارسال نکردین
کدهای مربوط به این کامپوننت رو بررسی کنین که چه متغیر هایی رو لازم داره و براش ارسال کنین
url به این شکل :
/http://127.0.0.1:8000/products/cat/lundury
پس مقدار کت یک path پارامتر و طبق گفته شما کت رو به فانکشن پاس دادم و طبیعتا باید فرستاده بشه.

ولی توی ارور میگه که این ارگومنت موجود نیست:
Product_tags_component() missing 1 required positional argument: 'cat'
بلاخره مشکل حل شد.
چون این فانکشن یک کامپوننت بود و به صورت Render_partial اجرا می شد path بهش ارسال نمی شد.
به جای اون به ClassBaseview فرستاده می شد.
با این دستور ('cat')category_name = self.kwargs.get دیتا رو گرفتم و به تمپلیت clasebaseview پاس دادم
و بعد به این صورت دیتا رو برای فانکشن فرستادم .
{% category_name=cat 'product_module.views.Product_tags_component' render_partial %}
متشکر از وقتی که گذاشتید.
خوشحالم مشکلتون برطرف شده دوست من
موفق باشین :)