Как описано в документации, предоставленной вами. здесь
Вы должны указать строковые аргументы (имена таблиц) в with_joined. Учитывая, что вы определили отношение
Investor.with_joined('investorAddressTable', 'investmentAddressTable, 'custodianAddressTable')
В случае, если вы можете использовать сеанс, вы можете запросить классы ORM напрямую, как
session.query(Investor).join(InvestorAddress).join(InvestmentAddress).join(CustodianAddress).all() # will assume you have set the foreign key properly
Это хорошо масштабируется. Однако в приложении, над которым я сейчас работаю, мы используем более длинные имена файлов (я думаю, это 20 символов), чтобы значительно увеличить пространство имен и уменьшить вероятность коллизий.