Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 15670|Svar: 1

Kommentar til designet af systemarkitekturen - resumé af udviklingen

[Kopier link]
Opslået på 14/11/2018 13.32.04 | | | |
forordIndtil videre har jeg lavet to eller tre projekter, herunder uddannelse, fora og CMS, og hvert projekt bruger kommentarfunktionen, så jeg vil fjerne kommentarsektionen separat og lave den til et komponentbaseret modul. Det sparer ikke kun udviklingsarbejde, men giver dig også en bedre forståelse af modulets funktioner.
Da jeg i øjeblikket primært udvikler med TP-rammeværket, vil følgende eksempler blive præsenteret i syntaksen for TP-rammen. Men faktisk føler jeg personligt, at kernen i metoden er utilstrækkelig, og jeg har ikke gjort brug af associationsmodellens funktion. Det er det, jeg vil implementere i næste opdatering.
Hovedsageligt vil jeg primært fortælle om de forskellige former for kommentarsystemer, jeg har været udsat for indtil nu, analysere deres respektive fordele og ulemper og give en idé om design af datatabeller og dataudtrækning, i håb om at være til gavn for dig. Hvis der er noget upassende, er alle også velkomne til at rette det.

Kommentarsystem

Der er tre hovedtyper af almindelige kommentarsystemer: bygning inden for en bygning, streaming-tilstand og citationstilstand (alle disse har jeg givet mine egne navne), og følgende fokuserer på fordele og ulemper ved disse tre og hvordan man implementerer dem.

1. Bygning-i-en-bygning-tilstand
Den såkaldte bygning inden for en bygning-model betyder, at hver kommentar optager første sal, og alle svar på kommentaren vises i bygningen, såsom kommentarsystemet i Baidu Tieba og Jianshu.




Fordel:Svar på kommentarer med et fokuseret blik, der gør det nemt at forstå den samtale, de sætter i gang.
Ulemper:Når der er for meget indhold, skal det være paginering, hvilket er mere kompliceret.
Databladdesign:


  • id (selvtilføjet primærnøgle)
  • target_id (ID for kommentaremnet, som kan ændres til article_id, course_id osv. efter behov)
  • parent_id (hovedkommentar-id)
  • reply_uid (Registrer bruger-ID'et for den kommenterede, 0 når du svarer på hovedkommentaren)
  • UID (bruger-ID, der har efterladt kommentaren)
  • indhold (Kommentarindhold)
  • Andre felter... (Tid, status osv.)



Back-end forretningslogik:



2. Flow-tilstand

Flow-tilstanden, som navnet antyder, ligner informationsflowet; uanset om det er en kommentar eller et svar, fylder hver besked et lag, såsom kommentarsystemet i laravel-China-fællesskabet.




Fordel:Logikken er enkel og nem at implementere
Ulemper:Indholdet af dialogen kan ikke præsenteres centralt, og det er ikke let at forstå dialogens indhold.
Databladdesign:


  • id (selvtilføjet primærnøgle)
  • target_id (ID for kommentaremnet, som kan ændres til article_id, course_id osv. efter behov)
  • reply_uid (Registrer bruger-ID'et for den kommenterede, 0 når du svarer på hovedkommentaren)
  • UID (bruger-ID, der har efterladt kommentaren)
  • indhold (Kommentarindhold)
  • Andre felter... (Tid, status osv.)



Back-end forretningslogik



3. Citationstilstand

Citationstilstand ligner streaming-tilstand, bortset fra at indholdet af svaret offentliggøres sammen med det citerede indhold.




Fordel:At forstå, hvilken kommentar svaret er rettet mod, kan hjælpe dig med at forstå, hvad samtalen handler om. Det er relativt nemt at implementere.
Ulemper:Ligesom Stream Mode repræsenterer det ikke hele samtalen i sin helhed. Ved at analysere fordele og ulemper kan man finde, at referencemønstret er et kompromis mellem bygningen inden i bygningen og flow-modet.
Databladdesign:


  • id (selvtilføjet primærnøgle)
  • target_id (ID for kommentaremnet, som kan ændres til article_id, course_id osv. efter behov)
  • reply_id (kommentar-ID for den kommenterede, hovedkommentaren er 0)
  • UID (bruger-ID, der har efterladt kommentaren)
  • indhold (Kommentarindhold)
  • Andre felter... (Tid, status osv.)



Back-end forretningslogik:

For at få listen over anmeldelser kan du forbinde kommentartabellen for at få brugerinformation og kommentarer, der citerer kommentarerne. Derefter laver du en simpel pagineringsproces.


Ovenstående er et foreløbigt resumé af de tre kommentartilstande, stildelen er endnu ikke blevet løst, og efter at blogprojektet er afsluttet, vil front-end stildelen også blive tilføjet. For ovenstående indhold, hvis der er nogen mangler, håber jeg, at du vil give vejledning.




Tidligere:Wu Shizi Tong DSLR fotografivideotutorial
Næste:Windows Event Log-detaljer - Logintype
Opslået på 16/08/2021 16.07.24 |
Hej, jeg så dit opslag om kommentarsystemet, jeg har haft stor gavn af det, og jeg forbereder i øjeblikket at lave et kommentarsystem, datamængden er omkring 1 milliard, det daglige antal besøg er 100w+ Jeg vil gerne stille til designrelaterede spørgsmål, hvis det er praktisk, kan du så tilføje din WeChat?  Min WeChat er BennyTian, tak!!
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com