Я нашел это немного сумасшедшим и хотел бы некоторые идеи. Мой дизайн выглядит так:
- Существует таблица строителей, каждый строитель может иметь почтовый адрес
- Существует таблица клиентов, каждый клиент может иметь почтовый адрес и адрес для выставления счета
- Есть таблица адресов
Мне нужно определить связи между адресами строителей и адресами клиентов.
Мой первоначальный дизайн базы данных был таким:
Builders
--------------------
id
postal_address_id
...
Clients
--------------------
id
postal_address_id
billing_address_id
...
Addresses
-------------------
id
...
Это кажется мне логичным, но у меня возникают проблемы с переводом этого в рельсовые ассоциации.
Я думаю, что адреса могут определять полиморфную ассоциацию Address_to: Addressable. Но как мне обращаться с почтовыми и платежными адресами для клиентов.
Любая помощь будет высоко ценится.