Loading...

railsfrance@googlegroups.com

[Prev] Thread [Next]  |  [Prev] Date [Next]

Re: [RailsFr] problème de concept sur application Guillaume Betous Mon Feb 20 08:01:45 2012

Ok, mais je voulais dire carrément mettre sender_id dans le modèle message.
Du coup c'est un simple "has one sender", sans le through.
Pas de contre indication ?

gUI

Le 20 février 2012 16:49, Florian Dutey <[EMAIL PROTECTED]> a écrit :

> On peut très bien utiliser un has_one :sender, :through => :recipients au
> lieu d'un has many.
> C'est plus logique en effet =).
>
> Le 20 février 2012 16:22, Guillaume Betous <[EMAIL PROTECTED]> a
> écrit :
>
> Questions :
>>
>> En faisant comme ça, tu autorises le fait qu'un message a plusieurs
>> senders ?
>>
>> Pour tu n'as pas laissé sender_id dans le modèle message ?
>>
>> gUI
>>
>> Le 20 février 2012 15:58, Florian Dutey <[EMAIL PROTECTED]> a écrit :
>>
>>> 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]
>>>
>>
>>
>>
>> --
>> Pour la santé de votre ordinateur, préférez les logiciels libres.
>> Lire son mail : http://www.mozilla-europe.org/fr/products/thunderbird/
>> Browser le web : http://www.mozilla-europe.org/fr/products/firefox/
>> Suite bureautique : http://www.libreoffice.org/download/
>>
>>  --
>> 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]
>



-- 
Pour la santé de votre ordinateur, préférez les logiciels libres.
Lire son mail : http://www.mozilla-europe.org/fr/products/thunderbird/
Browser le web : http://www.mozilla-europe.org/fr/products/firefox/
Suite bureautique : http://www.libreoffice.org/download/

-- 
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]