0
votes

Problème avec `has_many à travers:" relation

Je configure un utilisateur, un site Web et un modèle d'étiquette, mais je suis incertain des associations correctes?

Ceci est une application CRUD dans laquelle je souhaite permettre à l'utilisateur de créer un "site" (un signet essentiellement) et être capable d'ajouter une "balise" à ce site Web afin que les sites Web puissent être filtrés. p>

J'ai trois tables: utilisateur code>, site Web code>, tag code> p>

Je veux, l'utilisateur avoir de nombreux sites Web, Site Web comporte de nombreuses balises, les balises appartiennent au site Web et un utilisateur a de nombreuses balises via des sites Web. P>

J'ai déjà les modèles suivants configurés: p>

{content=>"tryingtoaddtag.com", "dropdown"=>"Clothing"}


6 commentaires

qu'est-ce que vous obtenez de @ user.tags ?


J'ai donc créé un site Web avec une balise de et lorsque je dépose dans pry et tapez tag.last Cela me donne que comme prévu. Mais utilisateur.all [0] .tags me donne un tableau vide. J'ai vérifié que user.all [0] me donne le bon utilisateur qui crée le site web / tag


Pouvez-vous essayer user.first.tags.to_sql et voir s'il rejoint correctement les tables de SQL?


C'est donc ce qu'il a rendu: "Sélectionnez \" Tags \ ". * À partir de \" Tags \ "Sites internes \" Sites Web \ "On \" Tags \ ". \" Sites Web \ ". "ID \" Où \ "sites Web \". \ "user_id \" = 1 "


Pouvez-vous essayer actuel_user.tags.build (contenu: paramètres [: Dropdown], site web: @website) ? Si cela ne fonctionne pas, vous pouvez d'abord enregistrer @website, puis passer un identifiant de site Web pendant que vous construisez.


@AustinBurke Veuillez consulter la réponse donnée ci-dessous, peut-être que vous voulez, n'hésitez pas à accepter / uppote de réponse si vous, ainsi que pour les futurs, alors chercheurs.


3 Réponses :


1
votes

Lire ce article puis essayer Ceci: xxx

si cela ne fonctionne pas. Utiliser la portée dans utilisateur avec xxx


1 commentaires

Pas de chance encore. Je ne devrais pas avoir à créer une méthode tique si j'utilise une jointure si je dois-je?



1
votes

Considérez un site Web HAS_MANY: TAGS

user = User.first
user.user_tags


0 commentaires

1
votes

Essayez avec la suite,

Tag.user_tags(@user)


0 commentaires