Giter VIP home page Giter VIP logo

blog's Introduction

博客

  1. 建立项目所需文件夹 public 静态资源 model 数据库操作 route 路由 views 模板
  2. 初始化项目描述文件 npm init -y
  3. 下载项目所需第三方模块 cnpm install express mongoose art-template express-art-template -S
  4. 创建网站服务器
  5. 构建模块化路由 admin用户管理 home用户界面显示

1.1登录

  1. 创建用户集合,初始化用户

    1. 连接数据库
    2. 创建用户集合
    3. 初始化用户
  2. 为登录表单项设置请求地址、请求方式以及表单项name属性

  3. 当用户点击登录按钮时,客户端验证用户是否填写了登录表单

  4. 如果其中一项没有输入,阻止表单提交

  5. 服务器端接收请求参数,验证用户是否填写登录表单

  6. 如果其中一项没有输入,为客户端做出响应,阻止程序向下执行

  7. 根据邮箱地址查询用户信息

  8. 如果用户不存在,为客户端做出响应,阻止程序向下执行

  9. 如果用户存在,将用户名和密码进行比对

  10. 比对成功,用户登录成功

  11. 比对失败,用户登录失败

  12. 保存登录状态

1.2 新增用户

  1. 为用户列表页面的新增用户按钮添加链接

  2. 添加一个连接对应的路由,在路由处理函数中渲染新增用户模板

  3. 为新增用户表单指定请求地址、请求方式、为表单项添加name属性

  4. 增加实现添加用户的功能路由

  5. 接收到客户端传递过来的请求参数

  6. 对请求参数的格式进行验证

  7. 验证当前要注册的邮箱地址是否已经注册过

  8. 对密码进行加密处理

  9. 将用户信息添加到数据库中

  10. 重定向页面到用户列表页面

1.3 数据分页

当数据库中的数据非常多是,数据需要分批次显示,这时就需要用到数据分页功能。

1.当前页,用户通过点击上一页或者下一页或者页码产生,客户端通过get参数方式传递到服务器端

2.总页数,根据总页数判断当前页是否为最后一页,根据判断结果做响应操作

总页数:Math.ceil(总数据条数 / 每页显示数据条数)

limit(2)//limit 限制查询数量 传入每页显示的数据数量

skip(1) // skip 跳过多条数据 传入显示数据的开始位置

数据开始查询位置=(当前页-1)* 每页显示的数据条数

1.4用户信息修改

  1. 将要修改的用户ID传递到服务器端

  2. 建立用户信息修改功能对应的路由

  3. 接收客户端表单传递过来的请求参数

  4. 根据id查询用户信息,并将客户端传递过来的密码和数据库中的密码进行比对

  5. 如果比对失败,对客户端做出响应

  6. 如果密码对比成功,将用户信息更新到数据库中

1.5 用户信息删除

  1. 在确认删除框中添加隐藏域用以存储要删除用户的ID值

  2. 为删除按钮添自定义属性用以存储要删除用户的ID值

  3. 为删除按钮添加点击事件,在点击事件处理函数中获取自定义属性中存储的ID值并将ID值存储在表单的隐藏域中

  4. 为删除表单添加提交地址以及提交方式

  5. 在服务器端建立删除功能路由

  6. 接收客户端传递过来的id参数

  7. 根据id删除用户

1.6文章评论

1.创建评论集合

2.判断用户是否登录,如果用户登录,再允许用户提交评论表单

3.在服务器端创建文章评论功能对应的路由

4.在路由请求处理函数中接收客户端传递过来的评论信息

5.将评论信息存储在评论集合中

6.将页面重定向回文章详情页面

7.在文章详情页面路由中获取文章评论信息并展示在页面中

blog's People

Contributors

kob01 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.