سيكون أول مشروع لنا هو إنشاء مدونة بسيطة .
أول خطوة سنقوم بها هي إنشاء مشروع جانغو ، تقنيا سنقوم بتشغيل بعض السكريبتات المقدمة من طرف جانغو والتي من شانها صنع الهيكل العظمي لمشروعنا (مجموعة من الملفات والمجلدات والتي نستخدمها في ما بعد).
إن أسماء بعض الملفات و المجلدات مهمة جدا بالنسبة لجانغو لذلك لا أنصحك أبدا بإعادة تسمية تلك الملفات والمجلدات كما أن نقلها من دليل الى أخر أمر لاينصح به أيضا و هذا لأن جانغو يحتاج الى الحفاظ على هيكل معين من أجل أن يكون قادرا على ايجاد الأشياء المهمة .
تذكير: يجب عليك أن تقوم بتنفيذ جميع الاوامر على البيئة الافتراضية التي تكلمنا عنها في المرة السابقة فإذا لم تكن ترى البادئة تبدا ب (myvenv) فعليك تفعيل البيئة الافتراضية وقد قمنا بشرح هذه العملية في الدرس السابق ومع هذا لا يوجد مانع من إعادة ذكر الامر بأختصار بالنسبة لمستخدمي ويندوز myvenv\Scripts\activate واما بالنسبة لمستخدمي لينكس myvenv/bin/activate
دعونا نبدا بإنشاء الهيكل الهضمي لمشروعنا .
مستخدمي لينكس لا تنسوا كتابة النقطة في أخر السطر
(myvenv) ~/pyarab$ django-admin startproject mysite .
مستخدمي ويندوز لا تنسوا كتابة النقطة في أخر السطر
(myvenv) ~/pyarab$ django-admin startproject mysite .
سيقوم هذا الأمر بإستدعاء سكريبت django-admin.py والذي سيقوم بإنشاء مشروع تحت اسم mysite والذي يحتوي على مجلدات وملفات وسيكون بنية الدليل مثل هذا :
pyarab ├───manage.py └───mysite settings.py urls.py wsgi.py __init__.py
pyarab : الدليل الذي يحتوي على جميع ملفات المشروع
manage.py عبارة عن سكريبت يساعدنا في إدارة المشروع والتحكم ﻻفيه ومع هذا السكريبت يمكننا من تشغيل سيرفر ويب على جهازنا من دون الحاجة الى تثبيت شيء أخر.
settings.py ملف يحتوي على إعدادات الموقع .
urls.py يحتوي على كل مايتعلق بروابط المشروع
wsgi.py سكريبت يساعد على تشغيل سيرفر التطوير ونشر المشروع الى بيئة الانتاج
__init__.py سكريبت بايثون لايحتوي على أي شيء مهمته الوحيدة هي تنبيه مترجم بايثون الى ان هذا الدليل عبارة عن حزمة بايثون
تغيير الإعدادات
في مجلد المشروع هناك ملف إسمه manage.py حيث سنقوم بالتعامل مع الملف كل مرة ما دمنا نقوم بتطوير المشروع حبث يوفر لنا هذا الملف مجموعة من الأوامر التي يمكننا تنفيذها من أجل الحفاظ على مشروع جانغو ، وعلى سبيل المثال يسمح لنا هذا الملف من تشغيل دالة مدمجة runserver والتي تقوم بتشغيل سيرفر ويب محلي حتى يتسنى لنا تجريب الموقع
دعونا نقوم ببعض التغييرات على mysite/settings.py قم بفتح الملف بإستخدام أي محرر نصوص ثم توجه الى الصفحة التالية وقم بأختيار المنطقة الزمنية الخاصة بك وذلك حتى نقوم بأعداد الموقع بالوقت المناسب لك .
دائما مع الملف settings.py قم بالبحث عن السطر التالي الذي يحتوي على كلمة TIME_ZONE ثم قم بتغيير المنطقة الزمنية الخاصة بك :
TIME_ZONE ='Africa/Algiers'
نحن أيضا بحاجة الى إضافة مسار خاص بالملفات الثابتة (سنتكلم لاحقا عن الملفات الثابتة وملفات CSS) ودائما على نفس الملف settings.py نتوجه الى أخر سطر ونقوم بإضافة متغير جديد تحت السطر STATIC_URL
STATIC_URL='/static/' STATIC_ROOT = os.path.join(BASE_DIR, 'static')
أعداد قواعد البيانات
هناك العديد من برامج قواعد البيانات والني يمكنها تخزين البيانات لموقعك ولكننا سنقوم بإستخدام قواعد البيانات الافتراضية وهي sqlite3 والتي تجدها في ملف mysite/settings.py
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } }
ولإنشاء قاعدة بيانات لمدونتنا نقوم بتشغيل الامر التالي على موجه الأوامر
python manage.py migrate
وطبعا يجب ان نكون على الدليل pyarab والذي يحتوي على ملف manage.py وإذا تمت العملية بنجاح ستكون النتيجة :
(myvenv) ~/pyarab$ python manage.py migrate Operations to perform: Apply all migrations: admin, contenttypes, auth, sessions Running migrations: Applying contenttypes.0001_initial... OK Applying auth.0001_initial... OK Applying admin.0001_initial... OK Applying sessions.0001_initial... OK
إلا هنا نكون قد إنتهينا ونكون مستعدين لتشغيل سيرفر الويب وتجريب المدونة.
ولتشغيل السيرفر يجب علينا أن نكون في دليل pyarab الذي يحتوي على ملف manage.py وعلى سطر الاوامر نكتب الامر التالي :
(myvenv) ~/pyarab$ python manage.py runserver
إذا كنت تعمل على نظام ويندوز ستخصل عىل خطأ UnicodeDecodeError وبالتالي أستخدم الامر التالي :
(myvenv) ~/pyarab$ python manage.py runserver 0:8000
كل ماعليك فعله الأن هو التأكد من أن الموقع يعمل بشكل صحيح ، قم بفتح المتصفح وأكتب عنوان السيرفر http://127.0.0.1:8000
ألف مبروك لقد بإنشاء اول موقع لك ..
يمكنك إيقاف تشغيل السيرفر في أي وقت تريد بالضغط على الزريين CTRL+C على سطر الأوامر وإذا أردت تشغيل سيرفر التطوير على منفذ اخر أو تريد لمستخدمين أخرين على الشبكة من الوصول اليه يمكنك إضافة خيارات إضافية (عنوان الايبي الخاص بك مع رقم المنفذ) الى الأمر :
python manage.py runserver <IP addr>:5555
هذه الطريقة تمكن المستخدمين على نفس الشبكة من الوصول الى موقعك بمجرد كتابة عنوان الايبي الخاص بك مع رقم المنفذ على متصفحاتهم.