Voglio implementare funzionalità che consentano agli utenti di condividere i post di altri utenti in modo simile a ciò che Facebook e Google+ condividono con il pulsante e twitter retweet.
Ci sono 2 scelte:
1) Creo una copia duplicata del post e ho una colonna che tiene traccia dell'id post originale e chiarisce che si tratta di un post condiviso.
2) Ho un post condiviso della tabella separata in cui salvataggio l'id del post che è una chiave esterna per postare id nella tabella dei post.
Parlando in termini di programmazione in pratica tengo puntatore al post originale in una tabella separata e quando è necessario pubblicare post pubblicato dall'utente e anche condivisi faccio un join sinistro su post e tabella post condivisa
Post(post_id(PK), post_content, posted_by)
SharedPost(post_id(FK to Post.post_id), sharing_user, sharedfrom(in case someone shares from non owners profile))
Sono favorevole alla seconda scelta ma volevo sapere il parere degli esperti là fuori?
Una cosa in più dei post sulla mia webapp sarà più sulle linee della dimensione di facebook che non sulla dimensione del tweet.