Newb question about modeling many-to-many joins: do I need a schema?

Hi all. I’m new to Elixir and Phoenix, and am not coming from Rails or anything else - I understand the web and SQL moderately well, but am new to MVC’s. My question is about modeling many-to-many relationships in Phoenix ≥ 1.3.

In SQL, I’m used to having a table for one thing (e.g., recipes), a table for another (e.g., ingredients), and a third that just associates the two (e.g., recipe_ingredients). In my actual problem domain, it feels logical to create contexts and schemas for the two primary tables, but I’m wondering how to represent the association table. Do I need a schema for it? Which context might that schema go in? Would each context represent the same table with its own schema?

I realize there are no definite answers and few best practices, but am I roughly on the right track with this, or does the question suggest I’m missing something fundamental about Ecto/Phoenix?

If anyone knows of any really dynamite entry-level (not coming from Rails!) tutorials that really go deeply into how schemas work in Phx ≥ 1.3 (especially if they cover when/why you’d use options like has_many and belongs_to, and what happens if you do/don’t), I’ll be super, super grateful. Thanks for any pointers!

Have you had a look through What’s new in Ecto 2.1 yet?

No - thank you. This looks like exactly what I needed.

Well just in case: Ecto - Getting Started

Last year I ran across this:
Using Ecto For Formula 1 Standings
From Zero to Ecto in 10 Minutes
Unfortunately it’s pre-2.x but it could be worth a quick read through.

Thinking in Ecto - schemas and changesets seems to be based on Phoenix 1.3 RC1.

Ultimately it’s about getting to the point that the documentation starts making sense.