Comment voulez-vous créer un système de notification comme sur ou Facebook dans RoR?
Je pense que les notifications seraient ses propres ressources et ont une has_many, through
relation avec le modèle de l'utilisateur avec une table de jointure représentant les associations.
Un utilisateur ayant beaucoup de notifications, c'est évident, et puis une notification aurait de nombreux utilisateurs, car il y aurait un certain nombre de messages standardisés (de faire des commentaires de notification, une suite de la notification, etc.) qui serait associé à de nombreux utilisateurs.
Au-delà de cette configuration, je ne suis pas sûr comment déclencher la création de notifications en fonction de certains événements dans votre application. Je suis aussi un peu incertain de la façon dont j'avais besoin pour configurer le routage - serait-il son propre ressource ou imbriquée dans la ressource de l'utilisateur? Je l'avais trouvé très utile si quelqu'un pouvait étendre sur ce.
Enfin, ajax de vote serait susceptible d'améliorer une telle fonctionnalité.
Il y a probablement des choses que je suis absent, veuillez remplir le présent de telle sorte que c'est une bonne ressource.
Vous devez vous connecter pour publier un commentaire.
De sorte que le sens général:
1) les Notifications serait un polymorphe de l'association dans des commentaires ont beaucoup de notifications, les utilisateurs peuvent avoir beaucoup de notifications, une suite, peut avoir de nombreuses notifications etc.
2) Vous pouvez avoir Modèle Observateurs, où on peut "observer" de certains événements, comme quand un nouveau commentaire est créé. C'est serait votre déclencheurs.
En termes de routage, vous n'avez pas vraiment besoin de faire quelque chose hors de la norme. La seule routage vous pouvez avoir est un domain.com/notifications où il affiche toutes les notifications.
Table de Notification pourrait ressembler à:
sender_id: integer, receiver_id: integer, notifiable_id: integer, notifiable_type: string
Pour un système de notification personnellement, je préfère le serveur de la technologie de push. Ryan Bates (la voix derrière Railscasts) a un grand écran cast que vous pourriez vouloir regarder
Pour déclencher des actions pour un événement particulier, ont un look à la 'Observateurs' comme @mike l'a mentionné