An implementation level question

Hi   I have a message model and message_participants table. message_participants table because same message goes to various recipients.   Messaging between either company to users OR user to company. So an initial design of tables made like

messages table

Tom Mac wrote:

Hi   I have a message model and message_participants table. message_participants table because same message goes to various recipients.   Messaging between either company to users OR user to company.

[...]

    Here about 'type' field I am not sure. My question is should I treat message_participants like STI or polymorphic? I can't decide it.

STI: single-table *inheritance*. Does User inherit from Company, or Company from User? Probably not. So no inheritance is involved, and you probably want a polymorphic association.

Best,