KeystoneJS是以Express和MongoDB为基础搭建的Node.js CMS和web应用程序平台。
特性
Express.js和MongoDB
Keystone会为你配置express(node.js事实上的Web服务器),用Mongoose(领先的ODM包)连接你的MongoDB数据库。动态路由
Keystone从设置MV*程序的最佳实践入手,让你管理模板、视图和路由变得更容易。数据库域
ID、String、Boolean、Date和Number是数据库的构件。Keystone以它们为基础实现了在现实工作中更实用的域类型,比如name、email、password、address、image和relationship (及其它)自动生成管理员界面
不管你在搭建应用程序,或者在生产环境中作为数据库内容管理系统时是否用它,Keystone的管理员界面都能节省你的时间,让你管理数据更容易。编码更简单
有时即便做的事情简单,异步代码也会变得复杂。Keystone让简单的事情(比如在视图中显示之前加载数据)保持简单。表单处理
要验证表单、上次图片或用一行代码更新数据库?基于你已经定义的数据模型,Keystone可以做到。会话管理
Keystone自带了会话管理和认证功能,包括密码域的自动加密。发送Email
借助Keystone,你的应用程序可以轻松地设置、预览和发送基于模板的email。它还集成了Mandrill (Mailchimp卓越的事务性email发送服务)
开始
前提是你已经安装了Node和Mongo。
安装生成器
你将要使用由Yeoman制作的KeystoneJS 生成器。在根目录运行:
$ npm install -g generator-keystone
给项目创建一个文件夹
你可以在任何地方创建项目:
$ mkdir my-test-project
然后进入新项目目录:
$ cd my-test-project
运行生成器
$ yo keystone
生成器会问你几个问题,主要是你想要什么功能,然后进行配置,并把你需要的所有文件复制到你的项目目录中。
它还会从npm中安装依赖项,帮你做好准备。运行项目
你刚刚创建了自己的第一个KeystoneJS项目,恭喜你!
首先启动mongodb:
$ mkdir ./data/db
$ mongod --dbpath ./data/db
然后运行keystone:
$ node keystone
然后打开http://localhost:3000 在浏览器中看看。
- 升级Keystone4
首先,4.0的keystone包为keystone@next
npm install -g generator-keystone
yo keystone
npm uninstall keystone
npm install keystone@next
其次,email变为了单独的包,添加该扩展然后再根据文档修改代码。
npm install --save keystone-email