有没有什么Node.js像脚手架在Rails?

Node.js中是否有任何工具或框架允许您在数据库中创build一个表并自动生成RESTful API(如Rails)?

非常感谢!

我想这取决于你想要什么:

  • Rails风格的代码生成(在它生成代码,你可以修改)
  • Django风格的半魔法,其中pipe理窗体可以从您的表/文档架构中的字段派生。
  • 你的意思是为数据库中的这些字段生成一个API,ala 葡萄为Ruby做了些什么 – 你做了一些configuration,并将数据转换成JSON并通过线路传输回来为你处理
  • 你有一个新的项目,你正在寻找一个具有以上三个特征之一的框架

对于前三个选项,已经有几个相关的SO问题了:

  • Node.js Mongoosejs Crud脚手架

  • Node.js和Mongoose的pipe理面板

  • 是否有一个Mongoose和Node.js和Underscore的CRUD生成器? 或类似的堆栈CRUD发电机?

这组链接中有几个非常棒的答案,其中包括:

  • @ jsalonen的答案收集了一些工具 < – 主要是关于生成pipe理用户界面
  • @道琼斯的答案用一些工具 < – 他提到RailwayJS(现在是CompoundJS),然后在这个话题上指出一些其他的问题/答案。
  • @ bergie关于一个将JugglingORM模型自动公开为RESTful API路由的模块的回答
  • 或者,正如@Andbdrew在评论中提到的那样,有节点重新定义
  • 你可以编写你自己的生成器 – 也许你可以编写一个Cake任务来获取一个模板文件,执行一些Javascript并为你的应用程序输出一个视图。 我最近自己开始了这条路。 当然Node.js应用程序涉及的各种技术(不同的ORMselect,Javascript前端,CSS布局),这可能是有道理的。

对于最后一个选项 – 一个自以为是的快速Web开发Node.js框架,提供良好的API支持,有几个选项:

  • @ abject_error的答案,在这个问题上,关于风帆
  • Geddy < – 自动提供控制器指定的数据的.json版本(取决于请求使用此数据呈现HTML视图或创buildJSON表示)
  • 关于如何快速使用CompoundJS制作REST API有一个很好的幻灯片,所以CompoundJs可能适合您的口味。

我最初放弃这些,因为我认为你可能有一个现有的项目,或不想使用一个自以为是的框架,但添加他们,因为为什么不。

SailsJS( https://github.com/balderdashy/sails )正是你正在寻找的。 它使用Waterline模块来模拟ActiveRecord 。 只需定义资源,它将自动为所有RESTful操作创buildJSON端点,并使端点与Socket.io连接兼容。

它build立在Express上,所以你可以使用任何Connect中间件来扩展它。 AFAIK它是build立API后端的最好的NodeJS framework

定义一个新的资源和sails generate user一样简单。 这将创build适当的模型和控制器文件,然后您可以修改。

请记住,Sails是使用无模式数据存储构build的,所以它主要支持MongoDB,而不是MySQL。 我不知道它有多好(如果有的话),它支持SQL数据库。