إنشاء تطبيق ويب باستخدام Python مع Django

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

البدء مع Django

قبل أن تتمكن من البدء في إنشاء تطبيق ويب Django، تحتاج إلى تثبيت Django. يمكنك تثبيت Django باستخدام pip، برنامج تثبيت الحزمة في Python:

pip install django

بمجرد تثبيت Django، يمكنك إنشاء مشروع Django جديد عن طريق تشغيل الأمر التالي في محطتك الطرفية أو موجه الأوامر:

django-admin startproject myproject

يقوم هذا الأمر بإنشاء دليل جديد يسمى myproject يحتوي على الملفات اللازمة للبدء. انتقل إلى هذا الدليل:

cd myproject

إنشاء تطبيق Django

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

python manage.py startapp myapp

يؤدي هذا إلى إنشاء دليل جديد يسمى myapp يحتوي على ملفات مثل models.py وviews.py وtests.py وغيرها. ستحدد نماذجك ووجهات نظرك وقوالبك داخل هذا التطبيق.

تحديد النماذج

تحدد نماذج Django بنية بياناتك ويتم تمثيلها كفئات Python. يمكنك تعريفها في ملف models.py داخل تطبيقك:

from django.db import models

class BlogPost(models.Model):
    title = models.CharField(max_length=200)
    content = models.TextField()
    created_at = models.DateTimeField(auto_now_add=True)

    def __str__(self):
        return self.title

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

python manage.py makemigrations
python manage.py migrate

إنشاء العروض والقوالب

تتعامل عروض Django مع منطق تطبيقك وتتفاعل مع النماذج لعرض البيانات في قوالب. يمكن إنشاء عرض بسيط في الملف views.py:

from django.shortcuts import render
from .models import BlogPost

def home(request):
    posts = BlogPost.objects.all()
    return render(request, 'home.html', {'posts': posts})

يقوم الكود أعلاه بجلب جميع منشورات المدونة من قاعدة البيانات ويمررها إلى قالب يسمى home.html. يتم تخزين قالب home.html في دليل يسمى templates داخل تطبيقك:

<!DOCTYPE html>
<html>
<head>
    <title>Blog Home</title>
</head>
<body>
    <h1>Blog Posts</h1>
    <ul>
    {% for post in posts %}
        <li>{{ post.title }} - {{ post.created_at }}</li>
    {% endfor %}
    </ul>
</body>
</html>

تكوين عناوين URL

لربط العروض بعناوين URL، تحتاج إلى تحديد أنماط URL. أنشئ ملفًا باسم urls.py في دليل التطبيق الخاص بك وأضف الكود التالي:

from django.urls import path
from . import views

urlpatterns = [
    path('', views.home, name='home'),
]

ثم قم بتضمين أنماط عنوان URL لهذا التطبيق في ملف المشروع الرئيسي urls.py:

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('myapp.urls')),
]

تشغيل خادم التطوير

بعد إعداد النماذج والعروض والقوالب وعناوين URL، يمكنك تشغيل خادم تطوير Django لرؤية تطبيق الويب الخاص بك أثناء العمل:

python manage.py runserver

افتح متصفح الويب وانتقل إلى http://127.0.0.1:8000/ لمشاهدة تطبيق الويب Django الخاص بك قيد التشغيل.

خاتمة

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