How to make a multi field reference multiple content types? I'm trying to implement a Project Member relationship but I don't know how to do that. I have as a content types: Project, Member and Position as the attached UML diagram shows. My doubts are about the team field in Project.



I need to relate team members with a certain positon (which can be different from default position) to the Project. One way would be to create another content type called ProjectMember, but I'm trying to avoid that.

What would be the fastest vs the most elegant way to implement that?

Is Field Collection module a suitable way to go?
This is one way:


Project (Content Type)
Member (Content Type)
Position (Taxonomy - Because maybe you want to classify)


In Member you will have a field that is a Term Reference to Position.

In Project you will have a Field Collection named Project Position, which will have an Entity Reference to Member and a field that is a Term Reference to Position.