J'ai un arrière-plan Rails et j'essaie de passer à travers les données de base. Comment les données de base gèrent-elles les relations complexes :has_and_belongs_to_many =>, :through =>
? Par exemple, supposons que vous étiez en train de modéliser des contributions de projet Open Source. Vous pouvez configurer une structure de table tels que:Equivalent de données de base de Rails: has_and_belongs_to_many =>,: through =>
Contributor Contribution Project
---------------- ------------------ ------------------
name typeOfContribution name
address amountOfContribution urlForSourceCode
... startedOnDate ...
... endedOnDate ...
contributor
project
Dans ce cas, vous dire que les deux Contributeur et le projet :has_and_belong_to_many
les uns des autres, et que les deux relations sont :through
la contribution se joindre à la table. Cela vous permet de stocker des informations sur la relation au sein de la relation elle-même (la table des cotisations).
Les méthodes pratiques de Rails sont également très pratiques, vous pouvez donc naviguer simplement dans les relations. Par exemple:
contributor.projects // this would return an array of project objects associated with the contributor
project.contributors // this would return an array of contributors associated with a project
Donc, ma question se résume à faire ceci:
- Est-il possible de modéliser d'une manière similaire à l'aide de base de données? et
- Si tel est le cas, les relations peuvent-elles être parcourues aussi facilement que le code ci-dessus (un exemple de code serait bon)?
Salut: [email protected], j'ai besoin d'une sorte de configuration sur ma machine, j'ai intérêt à donner une réponse. Le lendemain je vais essayer d'obtenir une solution. – user386660