I have two models - User and Network. In my case, each User can have many Network and each Network can have many User and belongs to one User (the ...
For further actions, you may consider blocking this person and/or reporting abuse
I'm not sure if you're searching for a network that user2 is following, which has been created by user1 (easy) or if you're searching for a network that both users are following (a bit harder).
easy task
user2.networks.where(creator: user1)a bit harder task
I think the solution is described here: coderwall.com/p/9xk6ra/rails-filte...
So in your case it might look like this:
user1.networks.merge(user2.networks)In both cases the database does the hard work, so no need for iterating through all networks thus shooting N queries at the database.
In the first case
user2.networkswill give a list of networks he has created, but it seems like the way to go. I can haveuser2.followed_networksfor that. ThanksIt's a bit different than you think.
user2.networksdoes only return a list of networks when executed, becausenetworksis not an array. It is anActiveRecord::Relation. That's whyuser1.networks.merge(user2.networks)does something completely different than iterating through thenetworks.I understand. What I wanted to say was that
user2.networksis the list of networksuser2has created, not the ones he's following.