يحتوي إطار عمل ويب Django على بنية عرض نموذج (MVT) ، مما يجعله الإطار الوحيد الذي ستحتاجه لإنشاء موقع ويب أو تطبيق ويب كامل. يتيح لك إطار عمل Python هذا إنشاء نماذج تنشئ قواعد بيانات وتعرض قوالب HTML الديناميكية لواجهة المستخدم باستخدام طرق العرض.

قوة Django ليست سرا. إنه سريع وموثوق وقابل للتطوير وآمن. تعتمد الموثوقية ، بالإضافة إلى قابلية هذا البرنامج على التوسع ، على بنية MVT الخاصة به. وفي هذه المقالة ، سوف تتعلم بالضبط كيف تعمل هندسة MVT من Django.

ما هو نموذج Django؟

يحدد النموذج في بنية MVT الخاصة بـ Django بنية وسلوك البيانات التي تريد تخزينها من خلال موقع الويب الخاص بك. يُنشئ كل نموذج من نماذج Django جدول قاعدة بيانات مطابق ، حيث تصبح كل سمة من سمات النموذج حقلاً في الجدول.

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

نموذج هيكل ملف مشروع Django الحالي

موقعي/
موقعي/
_pycache_
_init_.py
asgi.py
settings.py
urls.py
wsgi.py
الباعة /
الهجرة
_init_.py
admin.py
apps.py
نماذج
test.py
views.py
db.sqlite3
إدارة
instagram viewer

إنشاء نماذج Django

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

ملف Models.py

من نماذج الاستيراد django.db

# قم بإنشاء النماذج الخاصة بك هنا.

بائع فئة (طرازات. نموذج):
FIRST_NAME = النماذج. CharField (max_length = 30)
last_name = النماذج. CharField (max_length = 30)
contact_number = النماذج. CharField (max_length = 30)

فئة المنتج (الموديلات. نموذج):
البائع = النماذج. ForeignKey (البائع ، on_delete = الطرز. تتالي)
item_name = النماذج. CharField (max_length = 100)
item_qantity = النماذج. عدد صحيح ()
item_price = النماذج. DecimalField (max_digits = 9، decimal_places = 2)
item_description = النماذج. حقل النص()

الكود أعلاه هو نسخة من المحتوى المحدث لـ model.py ملف. ينشئ الملف الآن نموذجين - البائع والمنتج. تشترك هذه النماذج في علاقة رأس بأطراف ، حيث يمكن للبائع الواحد عرض العديد من المنتجات للبيع. لذلك ، يحتوي نموذج المنتج على ملف مفتاح غريب من البائع و عند_الحذف السمة المحددة ل عارضات ازياء. تتالي، مما يعني أنه عندما تحذف بائعًا ، فإنك ستحذف تلقائيًا كل منتج يحتوي على ذلك المفتاح الأساسي ك مفتاح غريب.

متعلق ب: تعلم Python و Django اليوم مع هذه الدورات الرائعة قد تلاحظ أيضًا أن كل نموذج في الكود أعلاه لا يحتوي على مفتاح أساسي. هذا لأن Django سيُنشئ تلقائيًا ملف المفتاح الأساسي إذا لم تنشئ واحدًا بشكل صريح.

قبل أن تتمكن من استخدام أي نموذج تقوم بإنشائه ، ستحتاج إلى إخبار Django بمكان العثور عليه. للقيام بذلك ، ستحتاج إلى الانتقال إلى ملف settings.py ملف وأدخل اسم الوحدة التي تحتوي على ملحق نماذج ملف ، في INSTALLED_APP الجزء.

في نموذج المشروع لهذه المقالة ، تم إنشاء ملف نماذج الملف موجود في وحدة البائعين. لذلك ، تم تحديث ملف INSTALLED_APP سيقرأ القسم على النحو التالي:

INSTALLED_APPS = [
"django.contrib.admin"،
"django.contrib.auth"،
"django.contrib.contenttypes" ،
"django.contrib.sessions"،
"django.contrib.messages"،
"django.contrib.staticfiles"،
"البائعين" ،
]

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

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

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

بيثون MANAGER.py runserver

مع تشغيل الخادم في محطة واحدة ، افتح محطة جديدة وأدخل الأمر التالي:

python manager.py makemigrations

بعد التنفيذ ، ستنتج المحطة الطرفية المخرجات التالية:

هجرات "البائعين":
البائعين \ الهجرة \ 0001_initial.py
- إنشاء بائع نموذج
- إنشاء نموذج المنتج

يوضح الناتج أعلاه بوضوح أنه لديك الآن عمليات ترحيل لنموذجين - البائع والمنتج. الآن إذا انتقلت إلى مجلد الترحيل في وحدة البائعين ، فسترى أنه يحتوي الآن على ملف جديد يسمى 0001_initial.py. داخل هذا الملف ، ستجد عمليات الترحيل التي أنشأتها للتو.

ملف 0001_initial.py

# تم إنشاؤه بواسطة Django 3.2.9 بتاريخ 2022-02-26 16:06

من هجرات استيراد django.db ، نماذج
استيراد django.db.models.deletion

الهجرة الطبقية (الهجرة. الهجرة):

الأولي = صحيح

التبعيات = [
]

عمليات = [
الهجرات. نموذج (
الاسم = "البائع" ،
الحقول = [
('id' ، النماذج. BigAutoField (auto_created = True، basic_key = True، serialize = False، verbose_name = 'ID')) ،
('first_name' ، النماذج. CharField (max_length = 30)) ،
('last_name' ، النماذج. CharField (max_length = 30)) ،
('contact_number' ، النماذج. CharField (max_length = 30)) ،
],
),
الهجرات. نموذج (
الاسم = 'المنتج' ،
الحقول = [
('id' ، النماذج. BigAutoField (auto_created = True، basic_key = True، serialize = False، verbose_name = 'ID')) ،
('item_name' ، النماذج. CharField (max_length = 100)) ،
('item_qantity' ، النماذج. IntegerField ()) ،
("item_price" ، النماذج. DecimalField (decimal_places = 2، max_digits = 9)) ،
('item_description' ، النماذج. حقل النص())،
("البائع" ، النماذج. ForeignKey (on_delete = django.db.models.deletion. CASCADE، to ='ellers.seller ')) ،
],
),
]

في كل مرة تجري فيها عملية ترحيل جديدة ، يُنشئ مجلد الترحيل نسخة جديدة من هذا الملف.

الخطوة الثانية من عملية الترحيل هي ترحيل النماذج أخيرًا. هذا يعني أنك تقوم بمزامنة حالة قاعدة البيانات مع ملف نماذج ملف ، باستخدام عمليات الترحيل التي قمت بإنشائها للتو في ملف 0001_initial.py ملف. يمكنك إكمال هذه العملية (أثناء استمرار تشغيل الخادم) باستخدام الأمر التالي:

python manager.py يهاجر

ما هو نموذج Django؟

القوالب هي طريقة لإنشاء HTML ديناميكيًا لمشروع Django الخاص بك. كل قالب Django له الامتداد .لغة البرمجة التمديد ومجموعة من المحتوى الثابت والديناميكي. تحتوي قوالب Django على بناء جملة فريد يتضمن طرقًا جديدة لإنشاء المتغيرات والعلامات في مستند HTML.

إنشاء قالب Django

لتقديم النماذج في نموذج موقع التجارة الإلكترونية لهذه المقالة ، ستحتاج إلى إنشاء دليل جديد في وحدة البائعين. سيكون هذا الدليل الجديد المسمى "قوالب" الصفحة الرئيسية لجميع مستندات HTML لتطبيق البائعين - بدءًا من الصفحة الرئيسية.

ملفellers_home.html





الباعة | التجارة الإلكترونية


نرحب البائعين!




بعد إنشاء القوالب الخاصة بك ، ستحتاج إلى جعلها مرئية لـ Django عن طريق إضافة دليل القوالب إلى ملف القوالب قسم من settings.py ملف. المحدثة القوالب سيبدو القسم كما يلي:

القوالب = [
{
"الخلفية": "django.template.backends.django. قوالب جانغو ،
"DIRS": [
# رمز جديد يشير إلى موقع القوالب
BASE_DIR / "البائعون" / "القوالب"
],
"APP_DIRS": صحيح ،
'والخيارات': {
"معالجات السياق": [
"django.template.context_processors.debug" ،
"django.template.context_processors.request" ،
"django.contrib.auth.context_processors.auth"،
"django.contrib.messages.context_processors.messages"،
],
},
},
]

الآن بعد أن عرف Django مكان العثور على قوالب موقع الويب ، يمكنك المضي قدمًا وعرضها على واجهة المستخدم باستخدام طريقة العرض.

ما هو عرض Django؟

العرض هو الطبقة الثانية من بنية MVT الخاصة بـ Django ، ولا يكون القالب مجديًا إلا إذا عرضته طريقة العرض على واجهة المستخدم. طريقة العرض مسؤولة عن قبول طلبات الويب وإرجاع الردود المناسبة (بما في ذلك القوالب). في أبسط أشكالها ، يكون العرض عبارة عن دالة Python مخزنة في ملف view.py ملف مشروع Django الخاص بك.

إنشاء عرض Django

ال view.py الملف موجود في وحدة البائعين لعينة مشروع Django. عندما يزور بائع ما موقع الويب الخاص بك ، سترغب في أن ينتقل إلى الصفحة الرئيسية للبائع. هذه الصفحة الرئيسية التي ستنشئها باستخدام نموذج HTML ، تشبه إلى حد كبير الصفحة التي تم إنشاؤها في قسم النموذج أعلاه.

ملف view.py

من django.shortcuts استيراد تصيير

فهرس def (طلب):
عرض الإرجاع (request،'ellers_home.html ')

يأخذ العرض أعلاه طلبًا ويعيد نموذج HTML للبائع. لذلك ، في كل مرة يزورها المستخدم (أو يطلب) http://127.0.0.1:8000/sellers/ سيرون الصفحة الرئيسية للبائعين. هذا بعد إنشاء ملف urls.py ملف في وحدة البائعين.

ملف urls.py البائعين

من مسار استيراد django.urls
من. وجهات نظر الاستيراد

أنماط عنوان url = [
المسار ('' ، views.index ، الاسم = 'index') ،
]

وقم بتضمين المسار إلى وحدة البائعين urls.py ملف في urls.py الملف الموجود في دليل Django الرئيسي.

ملف urls.py لموقع الويب

من django.contrib استيراد المسؤول
من استيراد django.urls تشمل المسار

أنماط عنوان url = [
المسار ('بائعين /' ، بما في ذلك ('Seller.urls')) ،
المسار ("admin /" ، admin.site.urls) ،
]

الآن بعد أن تم إعداد العرض ، يمكنك التأكد من أن خادم Django لا يزال قيد التشغيل والانتقال إلى http://127.0.0.1:8000/sellers/ في متصفحك لرؤية الصفحة الرئيسية للبائعين.

الصفحة الرئيسية للبائعين

مقارنة بين MVT Architecture لـ Django. هندسة MVC

تختلف هندسة MVT الخاصة بـ Django تمامًا عن هندسة MVC الشهيرة.

يعمل قسم القالب في بنية MVT بنفس الطريقة التي يعمل بها العرض في بنية MVC ، بينما يعرض العرض في بنية MVT صفات مشابهة لوحدة التحكم في MVC هندسة معمارية. ومع ذلك ، فإن النماذج في كلا العمارة تعمل بشكل متماثل.

مقدمة لهندسة MVC: شرح الأمثلة

قم بتطبيق مبادئ تصميم Model-View-Controller على البرامج الخاصة بك للحصول على نتائج فورية. إليك كيفية البدء.

اقرأ التالي

يشاركسقسقةبريد الالكتروني
مواضيع ذات صلة
  • برمجة
  • برمجة
  • بايثون
عن المؤلف
قاديشا كين (تم نشر 46 مقالة)

قاديشا كين مطور برامج متكامل وكاتب تقني / تقني. لديها قدرة مميزة على تبسيط بعض المفاهيم التكنولوجية الأكثر تعقيدًا ؛ إنتاج مادة يمكن لأي مبتدئ في مجال التكنولوجيا فهمها بسهولة. إنها شغوفة بالكتابة وتطوير البرامج الشيقة والسفر حول العالم (من خلال الأفلام الوثائقية).

المزيد من Kadeisha Kean

اشترك في نشرتنا الإخبارية

انضم إلى النشرة الإخبارية لدينا للحصول على نصائح تقنية ومراجعات وكتب إلكترونية مجانية وصفقات حصرية!

انقر هنا للاشتراك