Je travaille sur une application d'achèvement d'objectif, où il peut y avoir des objectifs, des jalons et des tâches. Les jalons appartiennent à des objectifs, les objectifs peuvent avoir de nombreux jalons, et les tâches peuvent appartenir à l'un ou l'autre des buts, aux jalons ou se suffire à eux-mêmes. Les informations que je veux stocker dans chaque modèle est la suivante:Comment modéliser les associations pour une application de tâche?
Goal content:string, est_completion_date:date completed:boolean, completion_date:date
Milestone content:string, est_completion_date:date completed:boolean, completion_date:date
Task content:string, occur_on:date completed:boolean, completion_date:date, days:?
Le champ « occur_on » pour le modèle de la tâche est de planifier la tâche pour une date personnalisée. Le champ 'jours' stocke les jours de la semaine où la tâche devrait se produire, si elle est récurrente.
J'ai deux questions.
1) J'ai lu sur l'héritage de table unique et je me demandais si cela fonctionnerait pour moi. Chaque modèle est à peu près le même, sauf que le modèle de tâche a 'days' et 'occur_on', mais n'a pas 'est_completion_date'. Quelle est la meilleure façon de modéliser toutes ces associations? 2) Je ne sais pas exactement comment stocker les informations concernant les jours de la semaine où une tâche devrait se produire. Devrais-je en faire un tableau associatif avec des valeurs booléennes pour chaque jour, ou devrais-je avoir des champs séparés pour chaque jour dans le tableau?