Aggiornamento dello stato e design / architettura del database delle news feed

2

Immagina un'applicazione simile a Facebook, in cui hai aggiornamenti di stato e un feed di notizie. I nomi e le immagini del profilo possono essere modificati. Esistono anche diversi tipi di aggiornamenti che richiedono un modello di layout diverso per ciascun tipo.

Odio la mia implementazione e vorrei un feedback su come migliorarlo. Quando immagazzino l'aggiornamento di stato nel database, in pratica conservo il modello HTML nel database con alcune informazioni specifiche sull'aggiornamento. Poiché la foto del profilo e il nome del poster possono cambiare, sto mantenendo i segnaposto nell'HTML memorizzato nel database come '{USER_PROFILE_PIC}' e sostituendolo con il valore più corrente quando il record viene estratto & visualizzato. Odio farlo in questo modo perché se vogliamo fare un cambiamento di design in futuro, siamo bloccati con questo codice HTML nel database.

Sto facendo tutto questo in SQL Server. Sono aperto ad altri database, se necessario, sto solo cercando un buon modo per estrarre gli aggiornamenti di stato dinamici da un database e visualizzarli con informazioni aggiornate al momento.

TIA

    
posta Jeff Borden 12.08.2013 - 00:13
fonte

1 risposta

1

Ok, se stai usando mvc, questo è sicuramente un po 'sbagliato ... Considera mvc, è il modello = > view = > quadro del controller. L'intero punto della struttura è garantire una separazione piacevole e pulita delle preoccupazioni.

Quando inizi a memorizzare i modelli nel tuo db, confondi queste preoccupazioni. Quello che vorrei fare è convertire ciascuno dei miei modelli in una vista parziale. L'intera ragione per cui le viste parziali esistono è di servire come piccoli modelli di codice.

Vorrei memorizzare i dati solo nel database.

Quindi la tua app ha fondamentalmente questo:

il db contenente solo i dati necessari per un aggiornamento di stato. un controller che carica questi dati e quindi li passa alla vista pertinente una vista che visualizza i dati nel proprio formato richiesto.

    
risposta data 16.08.2013 - 15:38
fonte

Leggi altre domande sui tag