⚡
التحديات
- الحاجة إلى نظام مصادقة بدون كلمة مرور تقليدية (تسجيل الدخول عبر الرسائل النصية)
- إدارة المحتوى متعدد اللغات والتواريخ الجلالية جنبًا إلى جنب مع التواريخ الميلادية
- تعقيد إدارة سلة التسوق ومزامنة الأسعار
- الحاجة إلى نظام حجز الطاولات مع التقويم الجلالي
- إدارة النقل والمدن المتعددة
- تكامل الدفع وتتبع الطلبات
💡
الحلول
- استخدام نظام مصادقة مخصص يعتمد على رقم الجوال ورمز OTP عبر الرسائل النصية
- تنفيذ نموذج User مخصص يرث من AbstractUser
- استخدام مكتبة persiantools لتحويل التواريخ الجلالية والميلادية
- تصميم نماذج Commodity و Cart و Reservation و Transport لإدارة البيانات
- تنفيذ نظام AJAX للتواصل مع الخادم دون تحديث الصفحة
- استخدام pymysql للاتصال بـ MySQL
- تصميم لوحة إدارة مخصصة بمستويات وصول مختلفة (مدير، مستخدم)
📚
الإنجازات
- نظام إدارة مقهى كامل وتشغيلي
- لوحة مستخدم مخصصة للعملاء والمديرين
- نظام مصادقة آمن وسريع عبر الرسائل النصية
- إدارة كاملة للمنتجات والطلبات والحجوزات
- دعم كامل للتقويم الجلالي في جميع الأقسام
- تصميم متجاوب ومتوافق مع الجوال
🔧
النقاط الفنية البارزة
- Django 5.0.1 و Python 3
- قاعدة بيانات MySQL مع pymysql
- نموذج User مخصص (AUTH_USER_MODEL)
- مصادقة عبر الرسائل النصية باستخدام واجهة غدير (Ghasedak)
- تحويل التاريخ الجلالي باستخدام persiantools
- نظام AJAX واسع مع JSON
- تصميم متعدد التطبيقات (store_account, store_profile)
- إدارة مستويات الوصول (مستخدم، مدير، مدير عام)
- استخدام Paginator للترقيم
- رفع وإدارة صور المنتجات
🏗️
الهندسة المعمارية
تم بناء كافيه نكار على معمارية MVT (Model-View-Template) في دجانغو ويتكون من تطبيقين رئيسيين:
1. store_account: مسؤول عن إدارة المستخدمين والمصادقة والتسجيل
- نموذج User مخصص مع حقول mobile و access_level و user_image
- نظام تسجيل الدخول عبر الرسائل النصية وكلمة المرور
- التسجيل مع التحقق من رقم الجوال
2. store_profile: مسؤول عن إدارة الملف الشخصي والمنتجات والطلبات
- نموذج Commodity للمنتجات
- نموذج Cart لسلة التسوق
- نموذج Reservation لحجز الطاولات
- نموذج Transport لإدارة المدن
يعمل المشروع في وضع DEBUG ويستخدم SQLite للتطوير و MySQL للإنتاج.
📐
نطاق المشروع
- تطبيقان رئيسيان (store_account, store_profile)
- أكثر من 8 نماذج بيانات (User, Commodity, Cart, Reservation, Transport, ImageFile, Comments, Keyword)
- أكثر من 15 صفحة وقالب HTML
- أكثر من 20 عرض ونقطة نهاية
- نظام مصادقة كامل عبر الرسائل النصية
- لوحة إدارة مخصصة
- نظام سلة التسوق والطلبات
- نظام حجز الطاولات