prefazioneFinora ho realizzato due o tre progetti, tra cui educazione, forum e CMS, e ogni progetto utilizza la funzione commento, quindi voglio togliere la sezione commenti separatamente e trasformarla in un modulo componentizzato. Non solo risparmia lavoro di sviluppo, ma ti permette anche di comprendere meglio le funzioni di questo modulo. Poiché attualmente sto sviluppando principalmente con il framework TP, i seguenti esempi saranno presentati nella sintassi del framework TP. Ma in realtà, personalmente ritengo che la parte fondamentale del metodo sia insufficiente, e non ho fatto uso della funzione del modello associativo. Questo è ciò che implementerò nel prossimo aggiornamento. Nella parte principale, vi parlerò principalmente dei vari modi di sistemi di commenti a cui sono stato finora esposto, analizzerò i rispettivi vantaggi e svantaggi e fornirò un'idea della progettazione e dell'estrazione dei dati delle tabelle dati, sperando di esservi utili. Se c'è qualcosa di inappropriato, tutti sono liberi a correggerlo.
Sistema di commenti
Esistono tre tipi principali di sistemi comuni di commenti: costruire all'interno di un edificio, modalità streaming e modalità citazione (tutti i quali ho dato i miei nomi), e il seguente si concentra sui vantaggi e svantaggi di questi tre e su come implementarli.
1. Modalità edificio-in-un-edificio Il cosiddetto edificio all'interno di un modello di edificio significa che ogni commento occupa il primo piano, e tutte le risposte al commento sono visualizzate all'interno dell'edificio, come il sistema di commenti di Baidu Tieba e Jianshu.
Vantaggio:Rispondi ai commenti con una visione mirata che renda facile comprendere la conversazione che scatenano.
Svantaggi:Quando c'è troppo contenuto, deve essere la paginazione, che è più complicata.
Progettazione della scheda tecnica:
- id (chiave primaria auto-aggiunta)
- target_id (ID dell'argomento del commento, che può essere cambiato in article_id, course_id, ecc. secondo necessità)
- parent_id (ID commento principale)
- reply_uid (Registra l'ID utente del commentato, 0 quando rispondi al commento principale)
- UID (ID utente che ha lasciato il commento)
- Contenuto (Contenuti dei commenti)
- Altri campi... (Tempo, stato, ecc.)
Logica di business back-end:
2. Modalità di flusso
La modalità di flusso, come suggerisce il nome, è simile al flusso di informazioni: sia che si tratti di un commento o di una risposta, ogni messaggio occupa uno strato, come il sistema di commenti della comunità laravel-cina.
Vantaggio:La logica è semplice e facile da implementare
Svantaggi:Il contenuto del dialogo non può essere presentato centralmente, e non è facile comprenderne il contenuto.
Progettazione della scheda tecnica:
- id (chiave primaria auto-aggiunta)
- target_id (ID dell'argomento del commento, che può essere cambiato in article_id, course_id, ecc. secondo necessità)
- reply_uid (Registra l'ID utente del commentato, 0 quando rispondi al commento principale)
- UID (ID utente che ha lasciato il commento)
- Contenuto (Contenuti dei commenti)
- Altri campi... (Tempo, stato, ecc.)
Logica di business back-end
3. Modalità di citazione
La modalità citazione è simile a quella in streaming, tranne per il fatto che il contenuto della risposta viene pubblicato insieme al contenuto citato.
Vantaggio:Capire a quale commento si rivolge la risposta può aiutarti a capire di cosa tratta la conversazione. È relativamente facile da implementare.
Svantaggi:Simile alla modalità Stream, non rappresenta l'intera conversazione. Analizzando i vantaggi e gli svantaggi, si può trovare che il modello di riferimento è un compromesso tra l'edificio all'interno dell'edificio e la modalità di flusso.
Progettazione della scheda tecnica:
- id (chiave primaria auto-aggiunta)
- target_id (ID dell'argomento del commento, che può essere cambiato in article_id, course_id, ecc. secondo necessità)
- reply_id (ID commento del commentato, il commento principale è 0)
- UID (ID utente che ha lasciato il commento)
- Contenuto (Contenuti dei commenti)
- Altri campi... (Tempo, stato, ecc.)
Logica di business back-end:
Per ottenere la lista delle recensioni, puoi collegare la tabella dei commenti per ottenere le informazioni degli utenti e i commenti che li citano. Poi fai un semplice processo di paginazione.
Quanto sopra è un riassunto preliminare delle tre modalità commento, la parte dello stile non è ancora stata risolta e, dopo aver completato il progetto del blog, verrà aggiunta anche la parte di stile front-end. Per quanto riguarda il contenuto sopra, se ci sono carenze, spero che mi fornirete indicazioni.
|