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
±------------------±-------------±-----±----±--------±---------------+
| Field | Type | Null | Key | Default | Extra |
±------------------±-------------±-----±----±--------±---------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| subject | varchar(255) | YES | | NULL | |
| message_thread_id | int(11) | YES | | NULL | |
| message | text | YES | | NULL | |
| company_id | int(11) | YES | | NULL | |
±------------------±-------------±-----±----±--------±---------------+
message_participants table
±--------------±-------------±-----±----±--------±---------------+
| Field | Type | Null | Key | Default | Extra |
±--------------±-------------±-----±----±--------±---------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| direction_in | tinyint(1) | YES | | NULL | |
| direction_out | tinyint(1) | YES | | NULL | |
| type | varchar(255) | YES | | NULL | |
| company_id | int(11) | YES | | NULL | |
| user_id | int(11) | YES | | NULL | |
| message_id | int(11) | YES | | NULL | |
±--------------±-------------±-----±----±--------±---------------+
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.
Relation is
message has_many message_participants
message_participants belongs_to message
Please guide
Thanks
Tom