(10) ورشة تطوير تطبيقات الويب باستخدام Django: مشاركة حلول بناء ال views و templates


#1

أهلًا بالجميع

فهرس المواضيع السابقة

فهرس موضوعات ورشة تطوير تطبيقات الويب باستخدام Django

المهمة المطلوبة

(9) ورشة تطوير تطبيقات الويب باستخدام Django: بناء ال views و templates

يتم تسليم الحلول عبر رابط المشروع على GitHub، بالتوفيق للجميع


فهرس موضوعات ورشة تطوير تطبيقات الويب باستخدام Django
#2

السلام عليكم


#3

:heart_eyes: راائع أحسنت تامر @0xThamer

حاولت أبحث على ملاحظات لكن لم أجد :star_struck:
اضافة : حاول تعمل deploy على heroku للموقع

بالتوفيق


#4

#5

https://pacific-waters-56079.herokuapp.com/


#6

@ibrahim_badwi
عمل جميل … هناك بعض الملاحظات

  • أولا : كل هدا العمل اضافي و ليس الطريقة الصحيحة لعمل ال queries

    if slug == "mobiles":
      mobile=Category.objects.get(name="Mobile Devices")
      mobiles=get_product_by_category(all_products,mobile)
    
    elif slug == "computers":
      computer=Category.objects.get(name="Computers")
      computers=get_product_by_category(all_products,computer)
    
    else:
      unknown_slug=True   
    

الطريقة الصحيحة هي هده

category = get_object_or_404(Category, slug=slug)

اضافة الى دلك الكود الأخير يعطينا 404 في حالة ما لم يجد ال category

  • ثانيا : لجلب ال products التي تنتمي الى category معينة نقوم بها كالتالي

    products = Product.objects.filter(category=category)
    

أو بالعكس باستعمال

category.products.all 

و بالتالي لا نحتاج get_product_by_category …لا تصعب الأمور على نفسك

  • ثالثا : لا يوجد داع لاستعمال fields … فقط رتب ال fields كما تريد في ال template … دلك يعطيك تحكم أكبر
    و بما أننا نتعامل مع model fields فعددها لن يتجاوز في أغلب اﻷحيان 10 و بالتالي تنظيمها لن يكون مشكلة

بالتوفيق يا ابراهيم


#7

هذا ما قمت بعمله الي الان و لكن لا استطيع فتح صفحة تظهر ال products


#8

ا @Salima عمل راائع و لا غبار عليه :star_struck:


#9

جميل يا أحمد @Ahmed-Shalaby
ادا كل شيئ تمام وااصل المتطلبات الأخرى و ارفع العمل من جديد :wink:


#10

كيف اختبر ما نفذته الي الان علي المتصفح


#11

جرب تضع في urls الخاص بالمجلد الرئيسي
urlpatterns = [
path(‘admin/’, admin.site.urls),
path(’’, include(‘shop.urls’)),
]


#12

موجودة بالفعل

urlpatterns = [
path(’’, include(‘shop.urls’)),
#path(’’, views.index),
path(‘hello/str:name/’, views.hello),
path(‘admin/’, admin.site.urls),
]


#13

اقصد أن تضع هذا الجزء فقط
path(‘admin/’, admin.site.urls),
path(’’, include(‘shop.urls’)),
و تحذف الباقي


#14

urlpatterns = [
path(’’, include(‘shop.urls’)),
#path(’’, views.index),
#path(‘hello/str:name/’, views.hello),
path(‘admin/’, admin.site.urls),
]
ما زال لا يعمل


#15

احذف / من urlpatterns = [
path(’/’, views.product_list, name=‘product_list’),
في urls الخاص بالمجلد shop


#16

Perfect :wink: :ok_hand::+1::+1::+1:
good_temp
جزاك الله خيرا


#17

العفو أخي


#18

@hichem2h @Salima

الان نريد ان يوضح لنا احد ما الفارق بين وجود / او حذفها في اي من ال URL المستخدمة او بالاصح كيفية استخدامها بطريقة سليمة, و شكرا لكم مرة اخري


#19

نسيت أن أعمل Push :stuck_out_tongue:

الآن تم الرفع


#20

شكرا اخ هشام :+1: , تم التعديل حسب المطلوب …