Je suis en train d'ajouter des fonctionnalités à une application où un utilisateur peut souscrire des changements faite:Motif persistance - Observer à base de règles
- à une autre entité (par tout utilisateur)
- par un autre utilisateur (à toute autre entité)
- une combinaison des deux (ce dernier est facultatif, mais rend le problème plus difficile)
Je me demande comment mieux persister ces règles à la base de données.
Je tend naturellement vers pour chaque entité donnée (y compris l'utilisateur lui-même), j'ajouter une table UserSubscription d'addition/entité (par exemple, PublisherUserSubscription, BookUserSubscription, UserUserSubscription)
Cela signifie que les souscriptions seront persisté l'intégrité est appliquée. Cependant, il semble que cela peut rapidement balbutier en termes de nombre de tables dont j'ai besoin, et peut conduire à une conception très fragile, devrais-je changer plus tard le modèle d'abonnement. (Chaque table existante pourrait avoir besoin d'être mise à jour). Étant donné qu'il s'agit d'un scénario réaliste assez courant, je m'attendrais à ce qu'il y ait des tendances dans ce domaine. Quelqu'un peut-il en suggérer?