Salut les gars. Je les modèles suivants:Rails Model Association Confusion
- Catégorie
- événement
- verrouillage
- Article
- Site
- utilisateur
Events
sont essentiellement un "log élément". En d'autres termes, ils vont stocker ce que l'action a été faite sur ce Item
par ce que User
dans quoi Category
. Naturellement, quand j'ai pensé à cela, j'ai pensé qu'il "a un utilisateur", "a une catégorie", "a un élément", et ainsi de suite. Cependant, cela signifierait qu'il y aurait une clé étrangère pour le Event
dans n'importe quelle rangée User
, mais ce n'est pas ce que je veux. Je veux la clé étrangère dans la ligne Event
, puisque le Event
est tout simplement donner des informations à ce User
, ce Category
, etc.
Donc je crois comprendre que je devrais plutôt dire qu'un Event
« appartient à un utilisateur », "appartient à une catégorie", etc. et que chacun "a plusieurs événements" en retour, correct? Je suis juste sûr, parce que cela ne se lit pas logiquement comme la plupart des autres associations. Je n'ai pas besoin de/je veux pouvoir accéder à un événement de l'autre côté (c'est-à-dire user.event) car cela n'aurait pas beaucoup de sens. Donc, si je fais cela, est-ce que j'ajouterais simplement l'appel belongs_to
et non le has_one
de l'autre côté?
Peut-être que j'ai mal conçu cela.
Je veux éventuellement être en mesure de rendre une page de journal »rempli de lignes, atteindre la ligne décrit un peu quelque chose comme:
event.user event.action event.item event.category
Avez-vous regardé dans acts_as_audited? Il ne fait pas exactement ce que vous cherchez à sortir de la boîte. Mais le fera avec un minimum d'effort. – EmFi