كيفية تصميم المنطق لتخزين القواعد التي تخصص الشارات ونقاط السمعة لمستخدمي الموقع

StackOverflow https://stackoverflow.com/questions/2629999

  •  26-09-2019
  •  | 
  •  

سؤال

في تطبيق الويب الحالي الخاص بي ، يجب أن أقوم بإنشاء "محرك نقاط السمعة وشارات" مشابه إلى حد ما. يحتوي هذا النظام على العديد من القواعد وكل قاعدة ترتبط ببعض أنشطة المستخدم المحددة مسبقًا (مثل عرض سؤال ، سؤال التصويت ، إلخ).

ما أحاول معرفة الحل لـ:

  1. تخزين جميع القواعد في جداول قاعدة البيانات (تتضمن كل قاعدة تقريبًا شروطًا متعددة). يمكننا أن نفعل هذا؟
  2. لمطابقة كل إجراء مستخدم مع القواعد المحفوظة في جداول DB وتعيين نقاط السمعة والشارات المرتبطة بها.
    • تحقق مما إذا كان المستخدم قد حصل بالفعل على المكافأة إلى قيمة العتبة (على سبيل المثال لا الأصوات ، وجهات النظر) ، المحددة في القاعدة.
    • تنفيذ إجراءات معينة مثل الترويج للمستخدم ، وإخطار المستخدم ، وحظر المستخدم المحدد في قواعد قليلة.
  3. قدم واجهة مستخدم إلى مسؤول التطبيق لإدارة قواعد (إضافة / تحرير / حذف) في التطبيق.

أي تلميحات ستقدر؟

هل كانت مفيدة؟

المحلول

لا يبدو أن قاعدة البيانات هي الأداة المناسبة لهذا المطلب. يبدو أنك ستحتاج إلى تنفيذ مثل هذا المنطق في طبقة التطبيق. بالطبع ، يمكن أن تأتي بعض قيم المعلمات من ملفات التكوين.

طريقة واحدة إذا كان هذا هو ما تريد فعله حقًا ، هو أن يكون لديك متغيرات (مثل طرق العرض ، الأصوات) المحددة في الأعمدة. يمكن أن تكون الإخراج الشارة المعينة أو نقطة السمعة عمودًا ولكن وظيفة الأعمدة الأخرى. لذلك سيبدو الجدول:
شارة __badgename_الآراء__أصوات
1
_____فضة_____10____2
2
_____ذهب____100____10

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top