Revert "Don't save through records twice"

Fixes #17209.

This reverts commit 068f092ced8483e557725542dd919ab7c516e567.

Conflicts:
	activerecord/CHANGELOG.md
	activerecord/test/cases/associations/has_many_through_associations_test.rb