هندسة Django: شرح نظام العمل لإطار عمل MVT

نشرت: 2020-12-23

جدول المحتويات

مقدمة

يعد Django أحد أسهل أطر عمل تطبيقات الويب وأكثرها فاعلية والتي تتم كتابتها بلغة Python. هذا الإطار مجاني ومفتوح المصدر ، وبالتالي استبدل استخدام PHP و servlets وما إلى ذلك لتطوير الواجهة الخلفية لأي موقع ويب. تم تطويره من قبل مؤسسة Django Software Foundation في 15 يوليو 2005.

يوفر Django ميزة لا تقبل المنافسة تتمثل في سهولة إنشاء قواعد البيانات للمطورين الذين يعملون على أطر تطوير الويب المعقدة. علاوة على ذلك ، يوفر Django أحد أسرع تدفقات البيانات ويتأكد أيضًا من عدم المساس بالأمان.

تتبع هندسة Django أساسًا إطار عمل MVT ، كما هو موضح أدناه.

  • م: النموذج
  • الخامس: عرض
  • T: نموذج

يمكن اعتبار MVT كبديل لإطار عمل MVC الذي يتكون من نموذج وعرض وتحكم. التناقض الرئيسي بين MVT و MVC هو أن بنية Django تتولى المسؤوليات التي يتم التعامل معها بواسطة جزء وحدة التحكم في هندسة MVC. يستخدم Django قوالبه لأداء جميع المهام المرتبطة بوحدة التحكم. بكلمات أبسط ، يحتوي القالب على محتويات هي مزيج من لغة قالب Django (المعروفة أيضًا باسم DTL) و HTML (لغة ترميز النص التشعبي).

النموذج ، كما تم تقديمه أعلاه ، مسؤول عن جميع الإجراءات والتخصيصات المتعلقة بواجهة المستخدم جنبًا إلى جنب مع الأنشطة المتعلقة بالعمارة للتطبيق. تحت النموذج ، لدينا "عرض". يأخذ العرض زمام الأمور في أنشطة المعالجة المنطقية واتخاذ القرار للتطبيق ويتواصل أيضًا مع "النموذج" لجلب نقاط البيانات المعنية وبالتالي تغيير القالب وفقًا للمتطلبات.

كما تمت مناقشته أعلاه ، فإن Django نفسها تعمل كوحدة تحكم تجلب عنوان URL مرتبطًا بجزء العرض من التطبيق ويرسل في النهاية ردود المستخدم الخاصة بالتطبيق. هذا هو التفاعل الشامل الذي يحدث داخل بنية Django MVT.

يجب أن تقرأ: مشاريع Django على Github

نموذج

في Django ، يلعب النموذج دورًا مهمًا في ربط الهيكل بأكمله بقاعدة البيانات. في هذه العملية برمتها ، يتم توصيل كل نموذج بجدول واحد داخل قاعدة البيانات. يتم التصريح عن الطرق والحقول المرتبطة بهذه العملية في ملف منفصل يتم تعريفه عمومًا على أنه model.py.

بمجرد الانتهاء من عملية الربط وتوصيل كل شيء بقاعدة البيانات ، سنكون قادرين على تقييم كل صف أو بمزيد من الدقة ، التسجيل من الجدول المعني ويمكننا حتى إجراء عمليات DML مختلفة وفقًا لذلك على الجدول.

Django.db.models هي الفئة الفرعية التي يتم استخدامها في هذه الحالة. يمكننا استخدام وظيفة الاستيراد الافتراضية في Python كـ "من نماذج استيراد django.db".

بعد تحديد أعمدة قاعدة البيانات والجداول والسجلات الخاصة بنا ، سنقوم بإحضار البيانات المتصلة بالتطبيق من خلال ذكر التعيين في settings.py.

رأي

يتم تحديد المنطق العام لإطار عمل تدفق البيانات في هذا الجزء من النموذج. يتم تحديد الكود بالكامل في ملف views.py.

مهمة أخرى لملف العرض هي إرسال الردود إلى المستخدم المعني كلما تم استخدام التطبيق. بعبارات عامة ، يمكننا ببساطة التأكيد على أن view.py قادرة على التعامل مع HttpResponse.

عند إنشاء ملف عرض ، فإن السؤال التالي الذي يتبادر إلى أذهاننا هو كيفية ربط هذا الملف بتطبيقنا؟ كيف نتأكد من أن إطار العمل سيفهم متى يتم عرض طريقة عرض معينة؟ يمكن إنشاء هذا الفهم من خلال تعيين views.py في ملف urls.py منفصل. كما ناقشنا أعلاه ، فإن urls.py هي المسؤولة عن تتبع جميع الصفحات المميزة ومن ثم تعيين كل منها.

قالب

كلما أردنا إنشاء موقع ويب ديناميكي لعمليات أو وظائف معقدة ، تساعدنا القوالب في تحقيق ذلك بطريقة سهلة. بكلمات أبسط ، يرسل الموقع الديناميكي ويستقبل بيانات ديناميكية أو متغيرة. عادةً ما ترتبط البيانات الديناميكية بسيناريو يتم تقديم بياناته الشخصية لكل مستخدم. على سبيل المثال ، المنشورات في مواقع التواصل الاجتماعي مثل Facebook و Instagram و Twitter وما إلى ذلك أو المعاملات المختلفة في منتجات fintech ، إلخ.

تم إعداد النموذج في ملف settings.py الموجود ضمن INSTALLED_APPS. ومن ثم فإن كود python سيبحث ببساطة عن الملفات المرتبطة ضمن دليل فرعي للقالب. هناك خياران للقيام بذلك - إما أنه يمكننا إنشاء ملف HTML أو ببساطة استيراد صفحة ويب ديناميكية عبر المتصفح وحفظها في مجلد القالب المعني.

الآن للحصول على رد ، سنقوم بربط هذا الملف في urls.py و views.py. بعد اكتمال جميع عمليات الربط ، يمكننا تجهيز موقعنا وتشغيله.

على هذا المنوال ، هذه هي الطريقة التي يعمل بها Django. تُستخدم سجلات Python الرئيسية للتفاعل مع بعضها البعض لإظهار صفحتنا هي settings.py و view.py و urls.py

عندما نميز مبرراتنا هنا بشكل فردي ، يمكن أن يكون لدينا عملية عمل تربط قاعدة البيانات ، مع أخذ مصادر بيانات العميل وردود أفعاله وإظهار صفحات ديناميكية. إذا كنت تريد التعمق أكثر في Django ، ألق نظرة على الوثائق وفهم العلاقة بينهما.

اقرأ أيضًا: أفكار مشروع Python Django

قم بالتسجيل في دورات هندسة البرمجيات من أفضل الجامعات في العالم. اربح برامج PG التنفيذية أو برامج الشهادات المتقدمة أو برامج الماجستير لتتبع حياتك المهنية بشكل سريع.

خاتمة

نعتقد أنك أحببت ملخصنا لإطار عمل Django. إذا كان لديك أي استفسارات أو توصيات بشأن هذه المقالة ، فيرجى إخبارنا من خلال قسم التعليقات أدناه. نحب أن نسمع تأملاتك.

إذا كنت مهتمًا بدراسة Django وأدوات وأطر عمل هندسية كاملة أخرى ، فقم بإلقاء نظرة على برنامج upGrad و IIIT-B Executive PG في تطوير البرامج الكامل المكدس والمخصص للخبراء العاملين ويقدم أكثر من 500 فترة طويلة من التحضير الشامل ، 9+ مشاريع ومهام ، حالة خريجي IIIT-B ، مشاريع تتويجا فعّالة معقولة وتوظيف مساعدة مع الشركات الكبرى.

استعد لمهنة المستقبل

تقدم الآن للحصول على درجة الماجستير في هندسة البرمجيات