Express4+Mongodb极简入门实例
一、准备工作
- 启动mongodb:bin目录下运行
- 在test数据库里插入一条数据:
二、正式开始
1、通过应用生成器工具 express
快速创建一个应用的骨架,参考Express中文网http://www.expressjs.com.cn/starter/generator.html;
2、这里我创建了一个名叫firstapp的应用:
通过Express生成器就快速生成了如下的应用骨架:
3、express4默认以jade为模板,这里我改用ejs,在package.json文件中的dependencies增加"ejs": "*",这里一并把"mongoose":"*"也添加进来。注:*号会告诉NPM“安装最新版本”。
修改后的文件内容就是这样的:
4、接下来就是修改views里的内容,删掉默认的jade文件,增加index.ejs:
<!DOCTYPE html>
<html>
<head>
<title><%= title %></title>
</head>
<body>
<p>Hi, <%= user.username %></p>
</body>
</html>
这里增加一个error页error.ejs,报错时可以看到错误信息
<!DOCTYPE html>
<html>
<head>
<title>error</title>
</head>
<body>
<h1><%= message %></h1>
<h2><%= error.status %></h2>
<pre><%= error.stack %></pre>
</body>
</html>
5、修改路由文件routes/index.js:
var express = require('express');
var router = express.Router(); var mongoose = require('mongoose'),
Schema = mongoose.Schema; var uri = 'mongodb://localhost/test';
var db = mongoose.createConnection(uri); var User = new Schema({
id : {type: String, index: true },
username : {type: String },
age : {type: String }
}); /* GET users listing. */
router.get('/', function(req, res, next) {
db.model('user', User).findOne({username:"charles"}, function (err, user) {
res.render('index', {title: 'Express', user: user });
});
}); module.exports = router;
这里连接的是test数据库。
6、至此就可以install下载相关包就可以运行了。
运行完后工程里就多了node_modules文件夹,下载好了mongoose、ejs等需要用到的模块。
7、执行:,在浏览器里输入http://localhost:3000/就可以看到结果了。
Express4+Mongodb极简入门实例的更多相关文章
- Express4+Mongodb超简单入门实例
开始前,请确保mongodb已经能正常工作,安装教程:windows下MongoDB的安装及配置 , 请自行安装配置.下面进入正文: 第一步:命令行创建数据库.表,并插入一条数据 命令如下: //创建 ...
- MongoDB 极简实践入门
原作者StevenSLXie; 原链接(https://github.com/StevenSLXie/Tutorials-for-Web-Developers/blob/master/MongoDB% ...
- Mongodb极简实践
MongoDB 极简实践入门 1. 为什么用MongoDB? 传统的计算机应用大多使用关系型数据库来存储数据,比如大家可能熟悉的MySql, Sqlite等等,它的特点是数据以表格(table)的形式 ...
- Spring Security极简入门三部曲(中篇)
目录 Spring Security极简入门三部曲(中篇) 验证流程 Authentication接口 过滤器链 AuthenticationProvider接口: demo时刻 代码讲解 小结 Sp ...
- Git 极简入门教程学习笔记
Git 极简入门教程 http://rogerdudler.github.io/git-guide/index.zh.html 测试用 https://github.com/xxx/BrnShop. ...
- .Net Core in Docker极简入门(下篇)
Tips:本篇已加入系列文章阅读目录,可点击查看更多相关文章. 目录 前言 开始 Docker-Compose 代码修改 yml file up & down 镜像仓库 最后 前言 上一篇[. ...
- ElasticSearch极简入门总结
一,目录 安装es 项目添加maven依赖 es客户端组件注入到spring容器中 es与mysql表结构对比 索引的删除创建 文档的crud es能快速搜索的核心-倒排索引 基于倒排索引的精确搜索. ...
- Spring Security极简入门三部曲(上篇)
目录 Spring Security极简入门三部曲(上篇) 写在前面 为什么要用Spring Security 数据库设计 demo时刻 核心代码讲解 小结 Spring Security极简入门三部 ...
- Express + Mongoose 极简入门
今天尝试使用express + mongoose,构建了一个简单的Hello world,实现以下功能: 定义mongodb使用的Schema,一个User 访问/输出Hello world 访问/i ...
随机推荐
- HASH JOIN算法
哈希连接(HASH JOIN) 前文提到,嵌套循环只适合输出少量结果集.如果要返回大量结果集(比如返回100W数据),根据嵌套循环算法,被驱动表会扫描100W次,显然这是不对的.看到这里你应该明白为 ...
- 【HDOJ】1341 Simple Computers
注意PC要与31. #include <cstdio> #include <cstring> #include <cstdlib> #define MAXN 40 ...
- 【转】Thunderbird on Ubuntu 12.04 – 调整邮件列表行间距
原文网址:http://www.xuebuyuan.com/414703.html markz@markz-hp6200:~$ cd .thunderbird/ markz@markz-hp6200: ...
- ubuntu的web开发环境搭建
为了保持mac的干净整洁,决定用PD搭建一条web开发环境,记下整个过程. ubuntu 首先是操作系统,本着习惯就好的原则,选用了Ubuntu server 12.04.4版.系统的安装很简单,ht ...
- SqlServer 挂载本地盘符到服务器端,方面备份还原
--此脚本要在登录上SqlServer远程服务器后才能执行,把数据库备份到本地(内网使用) --(例如我用本机SqlServer客户端连接上192.168.3.12服务器时,执行脚本,可以把指定数据库 ...
- mysql命令行里的加载更多显示
mysql> pager morePAGER set to 'more'mysql> pager lessPAGER set to 'less'mysql> nopagerPAGER ...
- 一种调用opencv库的C++工程通用的Makefile模板
第一次自己写makefile,记录一下 #Compilers #CXX=/opt/compiler/gcc-/bin/g++ CXX = g++ #Includes INCLUDE_FLAGS = - ...
- (原)Mac下Apache添加限制IP线程模块:mod_limitipconn.so
1.下载:http://dominia.org/djao/limit/mod_limitipconn-0.24.tar.bz2 解压到一个目录:我的是~/Download/mod_limitipcon ...
- Android设置上下边框或者左右边框
<?xml version="1.0" encoding="utf-8"?> <com.sunskyjun.fwproject.widgts. ...
- Mac下Qt连接MySQL 驱动问题
Mac OS X下Qt的mySQL driver编译安装 原创文章,采用CC协议发布,转载请注明: 转载自canX.me 本文链接地址: Mac OS X下Qt的mySQL driver编译安装 – ...