prefacioHasta ahora, he hecho dos o tres proyectos, incluyendo educación, foros y CMS, y cada proyecto utiliza la función de comentarios, así que quiero quitar la sección de comentarios por separado y convertirla en un módulo componentizado. No solo ahorra trabajo de desarrollo, sino que también te permite entender mejor las funciones de este módulo. Como actualmente estoy desarrollando principalmente con el marco TP, los siguientes ejemplos se presentarán en la sintaxis del marco TP. Pero de hecho, personalmente considero que la parte central del método es insuficiente y no he utilizado la función del modelo de asociación. Esto es lo que implementaré en la próxima actualización. En la parte principal, te contaré sobre los distintos modos de sistemas de comentarios a los que he estado expuesto hasta ahora, analizaré sus respectivas ventajas y desventajas, y ofreceré una idea del diseño y extracción de datos de tablas de datos, con la esperanza de serte útil. Si hay algo inapropiado, todos son bienvenidos a corregirlo.
Sistema de comentarios
Existen tres tipos principales de sistemas comunes de comentarios: construir dentro de un edificio, modo streaming y modo citación (todos los cuales he puesto mis propios nombres), y lo siguiente se centra en las ventajas y desventajas de estos tres y cómo implementarlos.
1. Modo de construcción en edificio El llamado edificio dentro de un modelo de edificio significa que cada comentario ocupa la primera planta, y todas las respuestas al comentario se muestran en el edificio, como el sistema de comentarios de Baidu Tieba y Jianshu.
Ventaja:Responde a los comentarios con una visión enfocada que facilite entender la conversación que generan.
Desventajas:Cuando hay demasiado contenido, hay que hacer la paginación, que es más complicada.
Diseño de la hoja técnica:
- id (clave primaria autoañadida)
- target_id (ID del tema del comentario, que se puede cambiar a article_id, course_id, etc. según sea necesario)
- parent_id (id principal del comentario)
- reply_uid (Registrar el ID de usuario del comentario, 0 al responder al comentario principal)
- UID (ID de usuario que dejó el comentario)
- Contenido (Contenido de comentarios)
- Otros campos... (Tiempo, estado, etc.)
Lógica de negocio del backend:
2. Modo de flujo
El modo de flujo, como su nombre indica, es similar al flujo de información; ya sea un comentario o una respuesta, cada mensaje ocupa una capa, como el sistema de comentarios de la comunidad laravel-china.
Ventaja:La lógica es sencilla y fácil de implementar
Desventajas:El contenido del diálogo no puede presentarse de forma centralizada y no es fácil entender el contenido del mismo.
Diseño de la hoja técnica:
- id (clave primaria autoañadida)
- target_id (ID del tema del comentario, que se puede cambiar a article_id, course_id, etc. según sea necesario)
- reply_uid (Registrar el ID de usuario del comentario, 0 al responder al comentario principal)
- UID (ID de usuario que dejó el comentario)
- Contenido (Contenido de comentarios)
- Otros campos... (Tiempo, estado, etc.)
Lógica de negocio de back-end
3. Modo de citación
El modo de citas es similar al modo streaming, salvo que el contenido de la respuesta se publica junto con el contenido citado.
Ventaja:Entender a qué comentario va dirigida la respuesta puede ayudarte a entender de qué va la conversación. Es relativamente fácil de implementar.
Desventajas:Al igual que el Modo Stream, no representa toda la conversación en su totalidad. Analizando las ventajas y desventajas, se puede encontrar que el patrón de referencia es un compromiso entre el edificio dentro del edificio y el modo de flujo.
Diseño de la hoja técnica:
- id (clave primaria autoañadida)
- target_id (ID del tema del comentario, que se puede cambiar a article_id, course_id, etc. según sea necesario)
- reply_id (ID de comentario del comentario, el comentario principal es 0)
- UID (ID de usuario que dejó el comentario)
- Contenido (Contenido de comentarios)
- Otros campos... (Tiempo, estado, etc.)
Lógica de negocio del backend:
Para obtener la lista de reseñas, puedes conectar la tabla de comentarios para obtener la información de los usuarios y los comentarios que citan los comentarios. Luego haz un proceso sencillo de paginación.
Lo anterior es un resumen preliminar de los tres modos de comentario, la parte de estilo aún no está resuelta y, tras completar el proyecto del blog, también se añadirá la parte de estilo del front-end. En cuanto al contenido anterior, si hay alguna carencia, espero que me ayudéis a orientarme.
|