kata pengantarSejauh ini, saya telah melakukan dua atau tiga proyek, termasuk pendidikan, forum, dan CMS, dan setiap proyek menggunakan fungsi komentar, jadi saya ingin mengeluarkan bagian komentar secara terpisah dan membuatnya menjadi modul komponen. Ini tidak hanya menghemat pekerjaan pengembangan, tetapi juga memungkinkan Anda untuk memiliki pemahaman yang lebih baik tentang fungsi modul ini. Karena saat ini saya terutama mengembangkan dengan kerangka kerja TP, contoh-contoh berikut akan disajikan dalam sintaks kerangka kerja TP. Tetapi pada kenyataannya, saya pribadi merasa bahwa bagian metode inti tidak mencukupi, dan saya belum menggunakan fungsi model asosiasi. Inilah yang akan saya terapkan di pembaruan berikutnya. Di bagian utama, saya terutama akan memberi tahu Anda tentang beberapa mode sistem komentar yang telah saya temui sejauh ini, menganalisis kelebihan dan kekurangannya masing-masing, dan memberikan gambaran tentang desain tabel data dan ekstraksi data, berharap dapat membantu Anda. Jika ada sesuatu yang tidak pantas, semua orang juga dipersilakan untuk memperbaikinya.
Sistem komentar
Ada tiga jenis utama sistem komentar umum: membangun di dalam gedung, mode streaming dan mode kutipan (semuanya telah saya berikan nama saya sendiri), dan berikut ini berfokus pada kelebihan dan kekurangan ketiganya dan cara menerapkannya.
1. Mode bangunan-dalam-gedung Yang disebut bangunan dalam model bangunan berarti bahwa setiap komentar menempati lantai pertama, dan semua balasan atas komentar ditampilkan di gedung, seperti sistem komentar Baidu Tieba dan Jianshu.
Keuntungan:Tanggapi komentar dengan tampilan terfokus yang memudahkan untuk memahami percakapan yang dipicunya.
Kekurangan:Ketika ada terlalu banyak konten, itu perlu menjadi penomoran halaman, yang lebih rumit.
Desain lembar data:
- id (kunci primer yang ditambahkan sendiri)
- target_id (ID topik komentar, yang dapat diubah menjadi article_id, course_id, dll. sesuai kebutuhan)
- parent_id (ID komentar utama)
- reply_uid (Catat ID pengguna yang dikomentari, 0 saat membalas komentar utama)
- UID (ID pengguna yang meninggalkan komentar)
- konten (Konten komentar)
- Bidang lainnya... (Waktu, status, dll.)
Logika bisnis back-end:
2. Mode aliran
Mode aliran, seperti namanya, mirip dengan aliran informasi, baik itu komentar atau balasan, setiap pesan menempati lapisan, seperti sistem komentar komunitas laravel-China.
Keuntungan:Logikanya sederhana dan mudah diterapkan
Kekurangan:Isi dialog tidak dapat disajikan secara terpusat, dan tidak mudah untuk memahami isi dialog.
Desain lembar data:
- id (kunci primer yang ditambahkan sendiri)
- target_id (ID topik komentar, yang dapat diubah menjadi article_id, course_id, dll. sesuai kebutuhan)
- reply_uid (Catat ID pengguna yang dikomentari, 0 saat membalas komentar utama)
- UID (ID pengguna yang meninggalkan komentar)
- konten (Konten komentar)
- Bidang lainnya... (Waktu, status, dll.)
Logika bisnis back-end
3. Mode kutipan
Mode kutipan mirip dengan mode streaming, kecuali bahwa konten balasan diterbitkan dengan konten yang dikutip.
Keuntungan:Memahami komentar mana yang ditujukan balasan dapat membantu Anda memahami tentang percakapan tersebut. Ini relatif mudah diterapkan.
Kekurangan:Mirip dengan Mode Streaming, ini tidak mewakili keseluruhan percakapan secara keseluruhan. Dengan menganalisis kelebihan dan kekurangannya, dapat ditemukan bahwa pola referensi adalah kompromi antara bangunan di dalam bangunan dan mode aliran.
Desain lembar data:
- id (kunci primer yang ditambahkan sendiri)
- target_id (ID topik komentar, yang dapat diubah menjadi article_id, course_id, dll. sesuai kebutuhan)
- reply_id (ID komentar dari yang dikomentari, komentar utama adalah 0)
- UID (ID pengguna yang meninggalkan komentar)
- konten (Konten komentar)
- Bidang lainnya... (Waktu, status, dll.)
Logika bisnis back-end:
Untuk mendapatkan daftar ulasan, Anda dapat menghubungkan tabel komentar untuk mendapatkan informasi pengguna dan komentar yang mengutip komentar. Kemudian lakukan proses penomoran halaman yang sederhana.
Di atas adalah ringkasan awal dari tiga mode komentar, bagian gaya belum disortir, dan setelah menyelesaikan proyek blog, bagian gaya front-end juga akan ditambahkan. Untuk konten di atas, jika ada kekurangan, saya harap Anda akan memberikan panduan.
|