掘金沸点论坛, 我是如何从零到1搭建的
我最近做了一个Midjourney网站,分享一下其中的功能–社区论坛。这个功能是一个精简版的社区论坛,如果有错误的地方,请指正和批评。
系统设计与流程
1、主要参考的网站还是掘金的沸点以及微信朋友圈功能
2、用户可以发布纯文字,图片,以及视频或者话题的帖子;
3、用户可以在帖子上回复纯文字,图片,或者表情包、还可以点赞、收藏,分享;
数据表结构
CREATE TABLE `paltform_posts` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT,
`category_id` bigint unsigned DEFAULT NULL COMMENT '分类Id',
`content` text COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '帖子内容',
`uid` int(11) NOT NULL COMMENT '用户id',
`status` int(11) DEFAULT '0' COMMENT '状态[0、待审核, 1、审核通过,2、审核失败]',
`remake` varchar(250) DEFAULT NULL DEFAULT '' COMMENT '备注',
`created_at` datetime DEFAULT NULL COMMENT '创建时间',
`updated_at` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`id`),
KEY `index_uid` (`uid`),
KEY `index_category_id` (`category_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='用户文章表';
CREATE TABLE `paltform_favorites` (
`uid` int(11) NOT NULL COMMENT '用户id',
`favoritable_id` bigint unsigned NOT NULL,
`favoritable_type` varchar(255) NOT NULL DEFAULT '',
`created_at` datetime DEFAULT NULL COMMENT '创建时间',
`updated_at` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`uid`,`favoritable_id`,`favoritable_type`),
KEY `favoritable_id_favoritable_type_index` (`favoritable_id`,`favoritable_type`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='用户收藏表';
CREATE TABLE `paltform_likes` (
`uid` int(11) NOT NULL COMMENT '用户id',
`likable_id` bigint unsigned NOT NULL,
`likable_type` varchar(255) NOT NULL DEFAULT '',
`created_at` datetime DEFAULT NULL COMMENT '创建时间',
`updated_at` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`uid`,`likable_id`,`likable_type`),
KEY `likable_id_likable_type_index` (`likable_id`,`likable_type`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='用户点赞表';
CREATE TABLE `paltform_categories` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
`created_at` datetime DEFAULT NULL COMMENT '创建时间',
`updated_at` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='分类表';
CREATE TABLE `paltform_tags` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
`created_at` datetime DEFAULT NULL COMMENT '创建时间',
`updated_at` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='标签表';
CREATE TABLE `paltform_taggables` (
`tag_id` int(11) NOT NULL COMMENT '标签id',
`taggable_id` bigint unsigned NOT NULL,
`taggable_type` varchar(255) NOT NULL DEFAULT '',
`created_at` datetime DEFAULT NULL COMMENT '创建时间',
`updated_at` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`tag_id`,`taggable_id`,`taggable_type`),
KEY `taggable_id_taggable_type_index` (`taggable_id`,`taggable_type`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='标签多态表';
CREATE TABLE `paltform_comments` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT,
`uid` int(11) NOT NULL COMMENT '用户id',
`status` int(11) DEFAULT '0' COMMENT '状态[0、待审核, 1、审核通过,2、审核失败]',
`remake` varchar(250) DEFAULT NULL DEFAULT '' COMMENT '备注',
`reply_id` int(11) DEFAULT '0' COMMENT '回复id',
`content` text COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '回复内容',
`commentable_id` bigint unsigned NOT NULL,
`commentable_type` varchar(255) NOT NULL DEFAULT '',
`created_at` datetime DEFAULT NULL COMMENT '创建时间',
`updated_at` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='评论多态表';
CREATE TABLE `paltform_images` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT,
`url` text COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '回复内容',
`imageable_id` bigint unsigned NOT NULL,
`imageable_type` varchar(255) NOT NULL DEFAULT '',
`created_at` datetime DEFAULT NULL COMMENT '创建时间',
`updated_at` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='图集多态表';
本作品采用《CC 协议》,转载必须注明作者和本文链接
这种类型网站不好管理吧,不知道网友会发布些什么内容
黑的背景版面,一眼看着有种落差感。大多数网站底色都是白或者灰