點贊功能的設計
每一次點贊,需要記錄:
(1)誰點的贊;
(2)為哪篇文章(Convention)點的贊;
(3)點贊時間
(4)是否已經取消點贊
點贊記錄表
| 列名 | 說明 | 空
| --- | --- | --- |
| id | 主 | not null |
| user_id | 用戶id |
| post_id | 被點贊帖子id |
| title| 被點贊帖子標題 |
| url | 被點贊帖子原文地址,不帶域名 |
| description | 被點贊帖子的描述 |
| table_name | 被點贊帖子不帶前綴 |
| status | 狀態:有效或取消 |
|user_nickname|用戶昵稱|
|avatar|用戶頭像|
| create_time | 點贊時間 |
這里寫了不少關于post文章的字段,用意是少查一個表,雖然增加了冗余,但是這是我們可以接受的
這里我們也增加了關于user的字段,本意是和簡書一樣,點擊點贊數的時候,會有彈窗彈出點贊的人員頭像,但是我查看了一下cmf源碼,暫時不支持A會員查看B會員個人中心的情況,cmf在Controller里面寫死了userid,必須是當前登錄人員查看自己的會員中心,作為插件,這就不好辦了,只能先留著字段,以后cmf支持了可以用的上,現在用戶昵稱 頭像 字段其實是用不上的
sql語言為
~~~
DROP TABLE IF EXISTS `cmf_plugin_fancy`;
CREATE TABLE IF NOT EXISTS `cmf_plugin_fancy` (
`id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT,
`user_id` bigint(20) UNSIGNED NOT NULL DEFAULT '0' COMMENT '用戶 id',
`title` varchar(100) NOT NULL DEFAULT '' COMMENT '收藏內容的標題',
`url` varchar(255) CHARACTER SET utf8 DEFAULT '' COMMENT '被點贊帖子原文地址,不帶域名',
`description` varchar(500) CHARACTER SET utf8 DEFAULT '' COMMENT '被點贊帖子的描述',
`table_name` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT '' COMMENT '被點贊帖子不帶前綴',
`post_id` int(10) UNSIGNED DEFAULT '0' COMMENT '被點贊帖子id',
`status` tinyint(2) DEFAULT '0' COMMENT '狀態:有效或取消',
`avatar` varchar(255) NOT NULL DEFAULT '' COMMENT '用戶頭像',
`user_nickname` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '用戶昵稱',
`create_time` int(10) UNSIGNED DEFAULT '0' COMMENT '點贊時間',
PRIMARY KEY (`id`),
KEY `uid` (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用戶喜歡表';
~~~
值得注意的是model關聯的命名問題:
如果你的表名為:cmf_plugin_sy_guestbook
那么你的model名為:PluginSyGuestbookModel
規律是:插件數據表最好加個plugin前綴再加表名,這個類就是對應“表前綴+plugin_demo”表
| 前綴 | 中綴 |表名|
| --- | --- |---|
| cmf | plugin |sy_guestbook|
同理 我們現在的表名為:cmf_plugin_fancy
那么我們的model名字必須為:PluginFancyModel
源碼請看百度云
- php套路
- 套路之類結構
- thinkphp分塊解析之Collection
- thinkphp基礎之collection
- Collection在thinkphp中的運用
- thinkcmf模塊分析
- Controller按界面點擊順序排列表
- user模塊-Controller分析
- portal模塊-Controller分析
- admin模塊-Controller分析
- user模塊-腦圖
- portal模塊-腦圖
- admin模塊-腦圖
- cmf公共函數解析-common.php
- thinkcmf點滴記錄
- 自定義標簽詳解
- 插件
- 系統信息插件
- 插件演示插件
- 留言板插件
- 留言板1 建立胚胎
- 留言板1-1 數據庫變化
- 留言板1-2 自定義鉤子
- 留言板2 連接數據庫
- 留言板3 讀取后臺界面數據
- 留言板4 前端模板
- 留言板5 分離cssjs文件
- 留言板6 驗證
- 留言板7 圖形驗證碼
- 留言板8 后臺留言列表頁
- 留言板9 后記
- 評論插件
- 1 分析數據表
- 2 CommentModel.php
- 3 UserModel.php
- 4 DCommentPlugin.php
- 前端調用代碼
- 喜歡插件
- 1 分析
- 2 收藏功能
- 3 插件建模
- 4 數據庫設計
- 5 插入一條數據
- 多語言
- thinkphp多語言
- thinkcmf多語言