Un modèle "recipient" avec - sender_id (user) - receiver_id (user) - message_id (message) - read (boolean) - deleted (boolean)
me semble être la meilleure solution. Ce modèle te permet d'adjoindre de nombreux comportements: * suppression par utilisateur tout en gardant la liste de tous les destinataires * gestion read/unread par utilisateur * un message est détruit quand tous les receivers et le sender l'ont marqué comme détruit J'avais eu la même problématique que toi et j'avais envisagé toutes les solutions. J'avais retenu celle-ci. Le 20 février 2012 15:23, Nikog <[email protected]> a écrit : > Bonjour > > j'ai un problème de conception sur une nouvelle application avec > > des Users qui peuvent envoyer des messages à plusieurs autres Users ainsi > qu'à eux-mêmes. > Et je veux pouvoir récupérer tous les messages envoyés par un user et tous > ceux adressé à un user > J'ai donc deux modèles > > User > Message > > quelle est la relation que vous me conseillez entre les deux ? > > J'avais pensé faire comme des tags avec des cases à cocher avec une > relation de type has_many through et un modèle intermédiaire mais j'ai peur > que cela ne coince quelque part ... > > Merci de votre aide > > Nikog > > > -- > Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de > Google Groups. > Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse > [email protected] > Pour résilier votre abonnement envoyez un e-mail à l'adresse > [email protected] -- Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de Google Groups. Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse [email protected] Pour résilier votre abonnement envoyez un e-mail à l'adresse [email protected]
