MongoDB常用语句

记录一下MongoDB常用语句,顺带与SQL做个简单的对比.

查询(find)

(1)查询所有结果

1
2
select * from article
db.article.find()

(2)指定返回哪些键

1
2
select title, author from article
db.article.find({}, {"title": 1, "author": 1})

(3)where条件

1
2
select * from article where title = "mongodb"
db.article.find({"title": "mongodb"})

(4)and条件

1
2
select * from article where title = "mongodb" and author = "god"
db.article.find({"title": "mongodb", "author": "god"})

查看更多

分享到 评论

Mongodb之mongoose入门

最近一直在看node,先从简单的express学起,其他的还好说,主要是和数据库的连接。既然是js,那就先从mongodb开始吧,我们使用mongoose中间件连接mongodb。

基本操作

关于mongoose的基本操作其实网上很多教程,按照mongoose官网的quick start guide,很快就能有个大概的了解。

1
2
3
$ npm install mongoose --save
var mongoose = require('mongoose')
mongoose.connect('mongodb://ip:port/database')

查看更多

分享到 评论

react-router实现按需加载

本文使用的 react-router 版本为3.0

React Router 是一个非常出色的路由解决方案,同时也非常容易上手。但是当网站规模越来越大的时候,首先出现的问题是 Javascript 文件变得巨大,这导致首页渲染的时间让人难以忍受。实际上程序应当只加载当前渲染页所需的 JavaScript,也就是大家说的“代码分拆” — 将所有的代码分拆成多个小包,在用户浏览过程中按需加载。
实际上就是将一个大 javascript 文件拆分成了若干个 chunk file。

Webpack 配置

首先在 webpack.config.js 的 output 内加上 chunkFilename

1
2
3
4
5
6
7
output: {
path: path.join(__dirname, '/../dist/assets'),
filename: 'app.js',
publicPath: defaultSettings.publicPath,
// 添加 chunkFilename
chunkFilename: '[name].[chunkhash:5].chunk.js',
},

name 是在代码里为创建的 chunk 指定的名字,如果代码中没指定则 webpack 默认分配 id 作为 name。

查看更多

分享到 评论

express的上传中间件multer

Multer 是一个 node.js 中间件,用于处理 multipart/form-data 类型的表单数据, 它主要用于上传文件. 它是写在 busboy 之上非常高效。

注意: Multer 不会处理任何非 multipart/form-data 类型的表单数据.

安装

1
npm install --save multer

使用

查看更多

分享到 评论

使用Travis将Hexo同时部署到Coding.net

既然使用了Travis在push后发不到github,那就再加点东西,发布到coding.net的Pages服务上,理论上国内服务应该快一点点。
同时搭建的教程可以看看这里

  1. 修改.travis文件夹下的**ssh_config,**添加coding.net
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Host github.com
    User git
    StrictHostKeyChecking no
    IdentityFile ~/.ssh/id_rsa
    IdentitiesOnly yes
    Host git.coding.net
    User git
    StrictHostKeyChecking no
    IdentityFile ~/.ssh/id_rsa
    IdentitiesOnly yes
  2. 修改hexo的配置文件**_config.yml**
    1
    2
    3
    4
    5
    deploy:
    type: git
    repo:
    coding: git@git.coding.net:wxrbw/wxrbw.coding.me.git,master
    github: git@github.com:wxrbwran/wxrbwran.github.io.git,master
    再push到github就可以自动发布到两个Pages了。
分享到 评论