Rails обрабатывает таблицы соединений немного иначе, чем вы думаете. С точки зрения администратора баз данных, ваша таблица соединений отлично, но для Rails таблицы настоящих соединений имеют только ссылочные столбцы. Как только вы добавляете новый столбец, Rails любит обрабатывать таблицу соединений как новую сущность.
(Лично я сначала расстроился из-за этого, но быстро понял, что это не имеет большого значения)
Итак, чтобы решить вашу проблему, вам нужно переименовать таблицу, скажем, FinanceBalances. Также давайте изменим financedBalance на сумму.
Затем в вашем файле Sale.rb укажите ассоциации следующим образом:
has_many :financeBalances
has_many :financeCompanies, :through => :financeBalances
Сделайте то же самое для FinanceCompany.
И ваш код будет выглядеть так:
<% for financeBalance in sale.financeBalances %>
<%= "£" + financeBalance.amount + " from " %>
<%= financeBalance.financeCompany.name %>
<% end %>
Если вы действительно хотите, чтобы financeCompany.financedBalance
работал, вы можете определить метод в своей модели financeCompany и написать запрос, который возвращает то, что вы хотите.