Nous avons besoin de créer un type d'application tutoriel, où il y aura une liste de sujets et chaque sujet aurait sous-sujets. L'utilisateur peut s'inscrire à un sujet, passer en revue les sous-sujets et marquer les sous-sujets comme «Terminé». Nous optons pour utiliser MySql
DB relationnelle.Conception de base de données pour une application Web tutoriel
Donc. il y a généralement 3 tables de maître,
- utilisateurs
- sujets
- sub_topics
Nous prévoyons de poursuivre l'approche en faisant des tables de correspondance pour 'utilisateurs et sujets' soit ' user_topics 'où il contient en tant que colonne user_id
, topic_id
, is_enrolled
Et une autre table de correspondance pour suivre l'état d'achèvement des sous-thèmes, peut être « user_sub_topics » où il contient user_id
, sub_topic_id
, topic_id
, is_completed
Est-ce la meilleure façon de concevoir DB? ou tout autre travail autour peut être fait?
Voici les quelques questions dont nous avons besoin pour obtenir les données
- Liste des sujets affichera la liste des sujets avec étiquette terminée si l'utilisateur a terminé tous les sous-thèmes (requête de jointure contribuerait)
- Sujet page détail afficherait la liste des sujets complétés sous trop
S'il vous plaît suggérer