美文网首页JS进步之路程序员
使用koa+mysql写一个简易论坛(一)

使用koa+mysql写一个简易论坛(一)

作者: Qibing_Fang | 来源:发表于2019-03-27 11:26 被阅读23次

Github
代码同步仓库:

https://github.com/ShyGodB/Forum-Code-Synchronize-

完整代码仓库:

https://github.com/ShyGodB/BBS-by-Koa-Mysql

写作原因

  • 初学者,学习之余找点额外的事做
  • 分享一下自己的学习经历,让自己不至于那么枯燥
  • 写文章的过程也是对自己知识的整理与总结的过程

项目概述

  • 使用koa框架加mysql写一个简易的论坛,它必须有论坛的基本功能,暂时不考虑高并发等性能问题,因为这只是一个个人的实践项目,并没有多大的可能性会运用于生产,当然,如果可能的话,我当然希望我写的东西能够被很多人认可并使用的。
  • 具体功能介绍:

用户:

1、发帖,评论
2、 注册、登录、登录,保持、清除登录状态
3、个人信息设置,包括头像,昵称,联系方式等

管理员:

1、 用户的管理
2、子论坛的创建、展示、编辑
3、帖子的精华设置、置顶、删除

其它:

1、相对漂亮的UI

环境准备

1. 文本编辑器, 可以考虑以下几种:
  • Sublime text (收费,但可忽略)
  • Vscode (免费)
  • Atom(免费)
  • WebStorm (收费,很贵)
    当然你也可以用其它的文本编辑器,记事本也是可以的
2. node.js

英文网址:

https://nodejs.org/en/download/current/

中文网址

https://nodejs.org/zh-cn/download/

  • 可自行选择系统对应的版本,下载完成后点击安装即可。

检验是否安装成功
打开终端,输入 node -v 出现版本号即表示安装成功

3. mysql
  • 进入mysql官网下载安装包,安装社区版的即可

https://dev.mysql.com/downloads/mysql/

image.png
  • mac用户可直接在“系统偏好设置里”启动mysql,(windows用户我还不是很了解,不过这个并不难,而且网上一大堆教程)然后打开终端,输入:

mysql -u root -p // 以root用户登录到数据库

  • 输入你的密码(密码也可以在系统偏好设置中设置),回车,即可进入数据库:

  • 常用mysql语句 ==>


    image.png
    image.png
    image.png
  • 表的约束条件


    image.png
  • 设置ID自增长 : AUTO_INCREMENT ( auto_increment )

项目准备

在这个项目中暂时使用了一个数据库和三个数据表
创建数据库:

create database BBS;

创建数据表:


image.png
image.png
image.png
  • mysql常见字段类型


    image.png

项目起步

  1. 创建项目目录: 在你计算机上的任意位置创建一个文件夹作为你的项目目录,文件夹路径最好不要有中文
  2. 新建app.js文件作文项目入口
  3. 打开终端,进入你的项目目录,初始化一个package.json文件, 命令如下:

npm init --yes

image.png
  • 没有这个文件就没地方放包了
  1. 下载koa:

npm install koa

  1. 下载一个帮助我们自动重启服务的工具包: nodemon(保存文件时自动重启)

npm install nodemon

6.配置使用nodemon:将之前的package.json文件配置成下图所示,你就可以直接在项目文件中使用 npm start 命令来启动服务,

image.png
  1. 使用你的文本编辑工具打开app.js文件,引包(我们之前下载好了koa,但是不将它引入就不能使用):

const Koa = require('Koa');
const app = new Koa();

  1. 开启本地服务,代码(注释)如下:
    image.png
    7.使用npm start,在浏览器中输入http://localhost:3000,你可以看到Hello World

相关文章

网友评论

    本文标题:使用koa+mysql写一个简易论坛(一)

    本文链接:https://www.haomeiwen.com/subject/eskpvqtx.html