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]

Répondre à