Ecto: How to deal with many-to-many relations with more properties on them?

You can do what I’ve stated here:

Add a has_many on top of the many_to_many.

The has_many refer to the join table and just preload the join table to access the fields in the join table. Unless I’m misreading your post.