听说不会nodejs,就不是合格的前端,也不是合格的全栈,吓得我赶紧开始学node,node安装就不说,node都没装,那就真不是搞前端了
其实就是按着最新的官方文档点这里来就行;建议直接用express生成器吧,相对方便点,可以直接生成项目
1.安装全局的(方便随时创建嘛)
$ npm install express-generator -g
2.创建项目(推荐加-e 就是ejs 模板,默认是jade[看着很怪异])
$ express myapp
create : myapp
create : myapp/package.json
create : myapp/app.js
create : myapp/public
create : myapp/public/javascripts
create : myapp/public/images
create : myapp/routes
create : myapp/routes/index.js
create : myapp/routes/users.js
create : myapp/public/stylesheets
create : myapp/public/stylesheets/style.css
create : myapp/views
create : myapp/views/index.jade
create : myapp/views/layout.jade
create : myapp/views/error.jade
create : myapp/bin
create : myapp/bin/www
3.然后安装所有依赖包
$ cd myapp
$ npm install
4.启动这个应用(MacOS 或 Linux 平台):
$ DEBUG=myapp npm start
Windows 平台使用如下命令:
> set DEBUG=myapp
> npm start
为了方便我直接安装在了腾讯云上 ubuntu14.04
直接几句命令执行后就好了
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
echo "deb [ arch=amd64 ] http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
sudo apt-get update
sudo apt-get install -y mongodb-org
sudo service mongod start
[initandlisten] waiting for connections on port <port>
sudo service mongod restart
我安装好的版本是3.4.2
新版本 mongodb设置大致如下:
$ mongo
$ use admin
$ db.createUser({
user:'root',
pwd:'xxxx',
rolses:[{ role: 'readAnyDatabase', db: 'admin' }]
})
$ db.auth('root','xxxx')
$ use dataname
$ db.createUser({
user:'user1',
pwd:'xxxx',
rolses:[{ role: 'readWirte', db: 'dataname' }]
})
$ db.auth('user1','xxx')
修改配置文件
sudo vi /etc/mongod.conf
net:
port: 27017
bindIp : 0.0.0.0
security:
authorization: enabled #(注意前面必须有个空格,括号请忽略)
然后重启一下
sudo service mongod restart
怎么安装mongoose就不说了,npm install mongoose --save
就行了
连接字符串'mongodb://username:password@host/databasename'
包含了账号密码域名和数据库名
在你喜欢的地方加上下面这段就行了
mongoose.connect('mongodb://username:password@host/databasename');
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function (callback) {
console.log('db service connected.')
});
有点很坑的是,比如你出现这个问题,你新建model的时候,比如
mongoose.model('yourtablename',yourScheMa);
它绑定的表示yourtablenames
,但是你可以指定哪个表
看这篇文章吧,可以写出个小demo;它搭建那块选择性看吧,跟我这边差异还挺大,反正前几步完成了,后面就开始写代码的时候就不会出错了。注意一点,每次修改非模板文件都需要重启
npm start