/Django: Part(2)

Django: Part(2)

فى هذا الجزء سوف نتناول مزيد من التفصيل كيفية عمل (web app) فى الجانجو اولا  بداخل الفولدر الذى قمنا بانشائه اخر مرة والذى كان يحتوى على :

:  (__init__.py) -1

 لكى يقوم البايثون بالتعامل مع المشروع كوحدة (package)  وعادة ما يكون ملف فارغ .

:  (manage.py) -2

 

تمكنك من التعامل مع المشروع ولمعرفة ماذا يمكن فعله قم بكتابة هذا الامر في التيرمينال (python manage.py help)

 (settings.py) -3

 

يحتوى على اعدادات المشروع بصفة عامة مثل :  ( INSTALLED_APPS,TIME_ZONE , LANGUAGE_CODE,….)

: (urls.py) -4

وهو اشبه مايكون بالجدول الذى يحتوى على اسم التطبيق والدالة التى تقوم بتنفيذه ، وبعد استعراض هذه الملفات  سوف نقوم بعمل ملف جديد وليكن اسمه(views.py)  بداخل هذا الملف نقوم بكتابة الكود الاتى :

اذا اتجهنا الى الملف (urls.py) فانه يحتوى على كود يشبه التالى :

كل ماعليك فعله هو اضافة اسم للتطبيق الذى قمت بعمله للتو وعمل استدعاء للدالة التى تقوم بتنفيذ هذا التطبيق وبتجاهل الكومنت يصبح الشكل اقرب للتالى :

ال ^ , $ هى regular expression characters وسوف نتحدث عنها فيما بعد ، ولكن فائدة  ^  هى التاكد من ان المعطى في url يماثل البداية بمعنى انه بدونه يصبح

وفائدة $ التاكد من انه يماثل النهاية بمعنى انه بدونه يصبح

والان دعونا نتناول باختصار ماذا يحدث عند طلب Request فى هذا المثال :

1-      عند طلب Request يقوم الجانجو بالذهاب الى ROOT_URLCONF الموجود بملف settings.py ، وتكون قيمته مثلا ROOT_URLCONF = ‘mysite.urls’

2-      يقوم الجانجو بالذهاب الى ملف urls  ومنه الى urlpatternsويقوم بعمل مقارنة بين الاسم الذى تم اعطائه فى ال (127.0.0.1:8000/hello)  والاسماء الموجودة بداخل  patterns

3-      عند وجود تطابق يقوم بعمل الدالة بتنفيذ الدالة المجاورة والموجودة  فى ملف views

4-      تقوم الدالة بارجاع HttpResponse ويقوم الجانجو بتحويله الى صفحة ويب لكى  تظهر لك على ال browser