دورة تطوير نظام إدارة الأعراس والمناسبات ودعوات QR عمليًا

بنية مجلدات المشروع ومسارات الصفحات

بنية مجلدات المشروع ومسارات الصفحات — نظام إدارة الأعراس والمناسبات ودعوات QR | Next.js وPrisma | أديب الصلوي
وقت الدراسة
10 دقيقة

المسار: تطوير نظام إدارة الأعراس ودعوات QR الوحدة: إعداد المشروع والتقنيات

مدخل إلى الدرس: بنية مجلدات المشروع ومسارات الصفحات

بنية مجلدات المشروع ومسارات الصفحات — نظام إدارة الأعراس والمناسبات ودعوات QR | Next.js وPrisma | أديب الصلوي

طريقة الدراسة: اقرأ التعريف، تتبّع المثال في الشرح، نفّذه بنفسك، ثم اختبر النتيجة والحالات الاستثنائية قبل الانتقال.

أهداف هذا الدرس

  • ربط اسم المجلد بالرابط URL المرتبط به.
  • فهم توزيع الملفات: app / lib / components / prisma.
  • بناء نموذج مسار ديناميكي /i/[token].tsx داخل App Router.

المخطط: خريطة مجلدات المشروع النهائية

flowchart TD
    Root["wedding-events/"]
    Root --> P["prisma/
schema.prisma"] Root --> L["lib/
prisma.ts — عميل مشترك
tsign.ts — توليد/تحقق token"] Root --> A["app/
layout.tsx · page.tsx"] A --> I["i/[token]/page.tsx
صفحة الدعوة"] A --> AD["admin/
page.tsx · guests/ · scan/"] A --> API["api/
events/route.ts · guests/ · checkin/"] Root --> PUB["public/ ..."]
المسار في app/عنوان URLالنوع
i/[token]/page.tsx/i/abc123صفحة دعوة Server Component
admin/page.tsx/adminلوحة الإحصائيات (use client جزئياً)
api/checkin/route.tsPOST /api/checkinالتسجيل

تمرين تطبيقي: في مشروعك أضف مجلدين فارغين i/[token] و api/checkin ثم ضع في كل واحد ملف placeholder وافتح الرابطين لترى 404/200 بفهم.

الخلاصة السريعة

  • المجلد في app ← المسار في الرابط، والأقواس ديناميكية.
  • lib يحتضن المنطق المشترك (prisma, tsign).
  • القاعدة: لا نضع ملفات أعمال داخل مجلدات الصفحات.

أخطاء شائعة يجب تفاديها

  • وضع عميل prisma في كل ملف — يستنفذ الاتصالات.
  • نسيان أن [token] يقبل أي نص، فالتحقق خارجياً.
  • مزج head كما في Pages القديمة عوض layout.

معجم مصطلحات الدرس

طرق ديناميكية
اسم مجلد بين قوسين [x] يمثل الجزء المتغير من الرابط.
layout
ملف يشارك البنية بين كل صفحات فرع معيّن.
lib
مشترك المساعدة خارج app (عادياً).

مراجعة وتمرين تثبيت المهارة

اختبار سريع: اشرح بعبارتك معنى «بنية مجلدات المشروع ومسارات الصفحات»، ثم بيّن أين ستستخدمه داخل نظام تسجيل حضور دعوات مناسبة عبر رمز QR، وما الخطأ الذي يجب اختباره قبل الاعتماد على الحل.

تحدٍّ إضافي: غيّر شرطًا واحدًا في التطبيق، وتوقع النتيجة، ثم نفّذ الاختبار وفسّر الاختلاف.

دروس نصية

#1

نظرة عامة على الدورة والمخرجات

#2

مقدمة إلى Next.js وأسباب اختياره

#3

أساسيات schema.prisma والنماذج

#4

مقدمة Route Handlers وبنية الاستجابة

#5

فهم Server Components والجلب الآمن

#6

تصميم الرمز Secured والتوقيع HMAC

#7

بناء الإنتاج وتجنّب أخطاء الحالة المربكة

#8

تحليل المتطلبات وتحديد الكيانات

#9

إنشاء مشروع Next.js وتجربته

#10

نموذج المناسبة Event بالعلاقات

#11

واجهة إنشاء المناسبة POST /api/events

#12

تصميم صفحة الدعوة الإلكترونية

#13

توليد صورة QR من قاعدة الدعوة

#14

نشر المشروع على Vercel

#15

تصميم قاعدة البيانات والعلاقات

#16

تجريب PostgreSQL محلياً وإنشاء قاعدة الداتا

#17

نموذج المدعو Guest مع الرمز الموقّع

#18

واجهات الضيوف الإضافة والقائمة

#19

نموذج الرد RSVP التفاعلي

#20

تجربة المسح في بوابة الحفل

#21

قاعدة بيانات إنتاج مُدارة وأمانها

#22

تدفق الدعوة وقراءة QR من التوليد إلى الحضور

#23

تثبيت Prisma والاتصال بالقاعدة

#24

نموذج الرد Rsvp ومنع التكرار

#25

واجهة تسجيل الحضور POST /api/checkin

#26

صفحة قائمة الضيوف والفرز

#27

واجهة تتفهم حالة الحضور والحصر

#28

إدارة المتغيرات السرية بيئة وواجهة

#29

سيناريو المشروع وقواعد العمل

#30

بنية مجلدات المشروع ومسارات الصفحات

#31

الاستعلام والجلب مع العلاقات

#32

التحقق من المدخلات ومعالجة الأخطاء

#33

لوحة الإحصائيات الحية

#34

تأمين الروابط والهجمات الشائعة

#35

قائمة الفحص النهائي قبل الإطلاق

#36

الترحيلات migrations والبذور seed

عرض الدروس كاملة تحقق من صفحة تعلم الدورة
درس نصي 5/36
أنت تشاهد
بنية مجلدات المشروع ومسارات الصفحات