基于 Node.js + Express + mongoDB + Bootstrap 搭建的电影网站

电影网站

?? GitHub: https://github.com/bxm0927/movie-website

此项目是基于 Node.js + Express + mongoDB + Bootstrap 搭建的电影网站。

主要功能模块:

  • 一期:前台电影展示页、电影详情页、后台电影管理中心(电影录入、电影修改)
  • 二期:用户登录注册注销功能、用户识别和持久化、后台用户管理中心(用户录入、用户修改)、电影评论

<!-- more -->

图片预览

技术栈

【前端】

  • HTML/CSS/JS:亘古不变三件套
  • ES6:ECMAScript 新一代语法,这也是以后的趋势
  • Monment.js:时间日期格式化插件
  • jQuery:主要用到 jQuery 的 ajax 方法处理异步请求和 DOM 操作
  • Bootstrap:页面 UI 框架,天然响应式,但是样式烂大街...

【后端】

  • pug:pug (以前的 jade) 是一个高性能的模板引擎,用来生成 HTML
  • Node.js:整个后端由 Node.js 驱动;用 npm 安装资源文件
  • Express:一个基于 Node.js 平台的 web 开发框架,由路由和中间件构成

【数据库】

  • mongoDB:进行数据存储的 NoSQL 数据库
  • mongoose:Node.js 的 mongodb 驱动软件包,是进行 mongoDB 快速建模的工具

【自动化构建】

  • gulp:前端自动化构建工具
  • JSHint:JS 代码校验

收获

  1. 熟悉了 pug 的语法及其在 Node.js 中的使用方法,了解到 pug 的优缺点及如何取舍
  2. 初步掌握了 express 框架的使用,如何处理路由以及中间件
  3. 掌握了 mongoose 在 Node.js 中如何连接数据库,以及 schema、model、entity 的使用
  4. 前后端数据传递与视图展现的流程
  5. 学会了使用 bcryptjs(Node.js 的一个加解密模块)对密码进行 “hash + salt” 处理
  6. 借助会话与 cookie 进行用户识别和持久化

TODO

  1. 用户登录注册未做表单校验等等
  2. 全面 Promise 化
  3. 升级成 ejs 模版
  4. 电影评论功能的功能过于简化
  5. 增加个人中心
  6. 前后台请求尽量使用 ajax 异步获取
  7. 还有很多...

Build Setup

# clone the repo into your disk.
$ git clone https://github.com/bxm0927/movie-website.git

# install dependencies
$ npm install

# run
$ npm start

# visit
$ http://localhost:3000/

License

The code is available under the MIT license.

Thanks

@Scott

时间: 2024-10-02 00:51:24

基于 Node.js + Express + mongoDB + Bootstrap 搭建的电影网站的相关文章

Node.js + Express + Mongodb 开发搭建个人网站(一)

一.Node + Express环境搭建 0.去Node官网下载安装node,如果安装了 npm 和 node的话 那么就 安装 全局的 express,-g全局安装 npm install express –g 1.然后使用 express 创建项目,命令:   express 项目名 初始化一个node项目 注意 这里 默认的页面模版 是jade 大部分小项目使用的是 ejs模版,所以 利用express创建ejs模版的node项目,命令为express -e 项目名 express -e

Node.js + Express + Mongodb 开发搭建个人网站(二)

二.路由 1.打开 routes/index.js ,这个意思就是  捕获到访问主页的get请求: 并通过 app.js 分配到对应的路由里: 看到这里,打开 http://127.0.0.1:3000/users/  来感受一个路由的意思: routes/index.js 文件: 如果我们请求是get,路径是 '/' 那么就是渲染index.ejs这个视图,可以省略后缀名 .ejs: 这个的意思是将数据传到index.ejs中 并输出到页面上. 2.视图 views/index.ejs 可以看

node.js高级编程|node.js 视频教程_基于node.js+Express.js+Jade+MongoDB实战开发

基于node.js+Express.js+Jade+MongoDB开发Web即时聊天系统课程讲师:幻星课程分类:前端开发适合人群:初级课时数量:36课时更新程度:完成用到技术:Node.js NPM. Express.NoSQL,MongoDB涉及项目:匿名聊天网站系统node.js视频教程:http://www.ibeifeng.com/goods-462.htmlnode.js 教程适合人群:node.js视频教程要求学员了解JavaScript,node.js入门教程适合希望更深入的学习N

Node.js, Express的服务器搭建过程的问题

Node.js, Express的服务器搭建过程的问题 Express : node.js 的框架,根据2012年BYvoid的说法,是node.js官方唯一推荐的框架 怎么搭建项目? - 安装nodejs->npm->express - express 的问题: 2017年, express-generator已经被独立成命令行工具了,所以要用 npm install express-generator 这样才能用express命令 怎么启动项目? 启动服务器可以用node app.js,因

Node.js Express+Mongodb 项目实战

Node.js Express+Mongodb 项目实战 这是一个简单的商品管理系统的小项目,包含的功能还算挺全的,项目涵盖了登录.注册,图片上传以及对商品进行增.删.查.改等操作,对于新手来说是个很不错的练手项目,分享给大家. GitHub源码:https://github.com/oceanMin/cms 项目前准备 安装node.js 安装express 安装mongoDB 章节目录 快速开始 快速开始 模块 express商品管理系统介绍 框架搭建.ejs .express.static

Node.js+Express+MongoDB数据库实现网页注册登入功能

通过 Node.js + Express + MongoDB 实现网页注册账号 和 登入账号的功能 项目准备: 1: 事先准备好项目的页面 (首页页面 index.html)(登入页面 login.html) (注册页面 register.html) 2:    安装好 Node.js 需要使用的第三方模板 3:  设计路径设计 4:  理清功能需求 5:  创建 app.js  router.js   mgdb.js 三个 js 文件  和 public 和 views 文件夹 作用: app

node.js+express+mongodb

主要是想用node.js链接mongodb,用的是mongoose.用ejs引擎,扩展到.html比较容易 小例子结构简单,框架清晰. 提交方法 路径 方法 作用 get add     post add   提交记录 get del     get modify   转到修改页面 post modify   修改记录 入口:mongodb.js,数据模型:model.js,(这两个在同一级目录) 路由:mong_ro.js(引入model.js用../) 三个页面index.html,add.

基于Node.js平台mongoDB开发——mongoskin(by vczero)

一.废话 从13年1月份接触mongodb进行开发,开发了旅游标签服务.微博标签检索系统.地图服务.web APP服务...使用MongoDB的场景从.NET.JAVA环境转到了node.js平台.越发觉Node.js和mongodb结合感觉的很好.感觉mongodb和node.js是天生的一对.的确,mongodb的客户端是JS的解析引擎.因此,选择mongodb和node.js做产品原型也是很nice的选择.网上,遇到网友询问mongodb的开发,选择哪个driver最好,以前一直是使用原生

基于node.js+Express.js+Jade+MongoDB开发Web即时聊天系统

本课程要求学员了解JavaScript,本课程适合希望更深入的学习Node.js,从事Web前端方向开发的大学生朋友,或者希望借助Node.js更优的性能与后台结合生产出更有价值的网站的在职程序员 咨询QQ:2199289905 课程目录 第一部分.理论讲解部分: 1.初识node.js 2.node.js特性 3.node.js核心库(console.Timers.util.Event) 4.node.js核心库(Buffer.Stream.FileSystem) 5.node.js核心库(F