571
社区成员
发帖
与我相关
我的任务
分享随着互联网的高速发展,人们特别是青年人对于社交的需求日益增加。针对这种需求,设计并实现一个网页版的图片兴趣社区,主要面向用户为年轻人,旨在为年轻人提供一个图片社交的途径,以此认识世界,结交朋友。用户可以使用滤镜修饰图片,对图片打标签,添加文字说明之后发布到社区,分享自己的生活;并能在社区中通过标签或名称发现各种图片与用户,通过图片进行交流,结识到有共同兴趣爱好的朋友。

通过对项目的用例分析,可以将整个项目分为5个功能模块

实现返回主页功能
实现搜索功能:1搜索某个特定的用户 2搜索某个tag的图片#开头
实现各种页面跳转功能:例如跳转到收藏夹。
1.实现用户使用账号登录功能
2.实现用户注册新账号功能
3.实现用户修改账号功能
4.实现用户找回遗忘账号功能
1.实现搜索他人帖子功能
2.实现浏览他人帖子功能
1.展示自己的个人相关信息
2.修改自己的个人相关信息
3.展示自己收藏的相关帖子图片
1.实现展示帖子的详细相关信息(包括图片,点赞数,评论)
2.实现用户对帖子进行点赞的功能
3.实现用户对帖子进行评论的功能
整个项目使用MVC架构从而实现前后端分离

组件设计:
1.主页组件
主页组件由选项卡与贴子预览组件组成。
选项卡用于选择主页浏览的模式,暂定为有关注的人与推荐两种模式。打开主页后,向server请求贴子预览的数据,并用于来渲染贴子预览组件。
2.贴子预览组件
贴子组件由上半部分贴子相关信息及操作的组件与下半部分图片组件构成。
贴子组件在渲染时,会向server请求与贴子相关地数据,并将贴子的id号(用于进一步检索贴子详细数据的索引)存入组件的state中。
其中上半部分组件左边的用户头像用户点击可以进入发布贴子的用户的个人主页,右边的选项是与贴子相关的交互操作,包括举报,收藏。这些都会将贴子的id号与操作码一起发送给server端。
下半部分组件用于展示贴子的预览信息。用户如果点击图片,会打开贴子的页面,并将贴子的id号传入到这个贴子页面中,用于帮助这个贴子页面从server获取数据。
1.用户登录信息表
| user_register(用户登录信息) | ||||
|---|---|---|---|---|
| 属性 | PK/FK | 类型 | 备注 | 约束 |
| u_id | PK | int | 用户id | NOT NULL |
| username | varchar() | 账号名 | NOT NULL | |
| password | varchar() | 密码 | NOT NULL | |
| telephone | varchar(11) | 手机号码 | NOT NULL | |
| varchar() | 电子邮箱 |
2.用户详细信息表
| user_details(用户详细信息) | ||||
|---|---|---|---|---|
| 属性 | PK/FK | 类型 | 备注 | 约束 |
| u_id | PK,FK | int | 用户id | NOT NULL |
| nickname | varchar() | 昵称 | NOT NULL | |
| sex | int(1) | 性别 | NOT NULL | |
| register_date | datetime | 注册时间 | NOT NULL | |
| update_date | datetime | 修改时间 | NOT NULL | |
| birthday | datetime | 生日 | ||
| location | varchar() | 地区 | ||
| signature | varchar() | 个性签名 | ||
| profile_url | varchar() | 用户头像url | NOT NULL |
3.用户相关信息表
| user_relatedData(用户相关信息) | ||||
|---|---|---|---|---|
| 属性 | PK/FK | 类型 | 备注 | 约束 |
| u_id | PK,FK | int | 用户id | NOT NULL |
| followers_number | int | 关注其他人的数量 | NOT NULL | |
| fans_number | int | 粉丝数量 | NOT NULL | |
| posts_number | int | 帖子数量 | NOT NULL | |
| collection_number | int | 收藏帖子的数量 | NOT NULL | |
| forward_number | int | 转发帖子的数量 | NOT NULL | |
| profile_url | varchar() | 用户头像url | NOT NULL |
4.关注信息表
| follow(关注信息) | ||||
|---|---|---|---|---|
| 属性 | PK/FK | 类型 | 备注 | 约束 |
| u_id | PK,FK | int | 用户id | NOT NULL |
| follow_id | FK | int | 关注者 | NOT NULL |
| state | int(2) | 状态 | NOT NULL | |
| update_time | datetime | 修改时间 | NOT NULL |
5.帖子信息表
| post(帖子信息) | ||||
|---|---|---|---|---|
| 属性 | PK/FK | 类型 | 备注 | 约束 |
| post_id | PK | int | 帖子id | NOT NULL |
| publisher_id | FK | int | 发布者id | NOT NULL |
| photo_number | int | 图片数量 | NOT NULL | |
| content | varchar(500) | 内容 | ||
| comment_number | int | 评论数量 | NOT NULL | |
| forward_number | int | 被转发数 | NOT NULL | |
| like_number | int | 点赞数量 | NOT NULL | |
| collection_number | int | 收藏数量 | NOT NULL | |
| publish_time | datetime | 发布时间 | NOT NULL | |
| photo_path_url | varchar() | 图片路径 | NOT NULL | |
| location | varchar() | 定位 | NOT NULL |
6.图片信息表
| photo(图片信息) | ||||
|---|---|---|---|---|
| 属性 | PK/FK | 类型 | 备注 | 约束 |
| photo_id | PK,FK | int | 图片id | NOT NULL |
| url | varchar() | 图片url | NOT NULL |
7.点赞信息表
| like(点赞信息) | ||||
|---|---|---|---|---|
| 属性 | PK/FK | 类型 | 备注 | 约束 |
| post_id | PK,FK | int | 被点赞帖子id | NOT NULL |
| u_id | PK,FK | int | 点赞者 | NOT NULL |
| state | int(1) | 状态 | NOT NULL | |
| update_time | datetime | 修改时间 | NOT NULL |
8.转发信息表
| forward(转发信息) | ||||
|---|---|---|---|---|
| 属性 | PK/FK | 类型 | 备注 | 约束 |
| forward_id | PK | int | 转发号 | NOT NULL |
| post_id | FK | int | 转发的帖子的id | NOT NULL |
| u_id | FK | int | 转发人id | NOT NULL |
| state | int(1) | 状态 | NOT NULL | |
| update_time | datetime | 修改时间 | NOT NULL | |
| comment_number | int | 评论数 | NOT NULL | |
| like_number | int | 点赞数 | NOT NULL | |
| extra_content | varchar(500) | 转发的心情 |
9.评论信息表
| comment(评论信息) | ||||
|---|---|---|---|---|
| 属性 | PK/FK | 类型 | 备注 | 约束 |
| comment_id | PK | int | 评论id | NOT NULL |
| post_id | FK | int | 帖子id | NOT NULL |
| u_id | FK | int | 评论者id | NOT NULL |
| parent_id | int | 父亲结点评论id | ||
| child_number | int | 孩子结点数量 | NOT NULL | |
| content | varchar() | 评论内容 | NOT NULL | |
| create_time | datetime | 创建时间 | NOT NULL |
10.同步库
| feeds(同步库) | ||||
|---|---|---|---|---|
| 属性 | PK/FK | 类型 | 备注 | 约束 |
| u_id | PK,FK | int | 消息接收者id | NOT NULL |
| post_id | PK,FK | int | 接收的帖子id | NOT NULL |
| send_id | FK | int | 发送者id | NOT NULL |
| publish_time | FK | datetime | 发布时间 | NOT NULL |
| post_type | int(2) | 发送/转发 | NOT NULL |
11.收藏夹表
| collection(收藏夹) | ||||
|---|---|---|---|---|
| 属性 | PK/FK | 类型 | 备注 | 约束 |
| collection_id | PK | int | 收藏夹id | NOT NULL |
| u_id | FK | int | 用户id | NOT NULL |
| collection_name | varchar() | 收藏夹名称 | NOT NULL | |
| posts_id | varchar() | 所有帖子id |
作者:305