- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我已经阅读了很多关于 Nodejs 及其框架的内容,最近完成了我的第一个完整的 javascript 前端(使用 Angularjs)。
我决定我的下一个宠物项目将是使用以下两个框架之一的 Nodejs 冒险:
我已经阅读了这两种方法,但仍然不能完全理解它们的区别,以及为什么我应该选择使用其中一种。所以请戴上你最好的推销员帽子,挑选一个框架,然后卖给我。
我的宠物项目需要的一些功能是:
最佳答案
我不能代表 Meteor,但我可以帮助提供一点关于 Sails 的背景知识,因为它是我创建的。
tldr;Sails 并不是解决所有网络问题的 Elixir ——但我相信 Node.js 是。 Sails 的目标是为开发基于 node.js 的完整、可扩展、启动和企业友好型应用程序提供一个实用的框架。我开始 Balderdash带着问题“我们可以将 Node.js 用于所有事情吗?”。 sails 就是答案。
来 self 们的new docs :
Sails is, of course, a web framework. But take a step back. What does that mean? Sometimes, when we refer to the "web", we mean the "front-end web." We think of concepts like web standards, or HTML 5, or CSS 3; and frameworks like Backbone, or Angular, or jQuery. Sails is not "that kind" of a web framework. Sails works great with Angular and Backbone, but you would never use Sails instead of those libraries.
On the other hand, sometimes when we talk about "web frameworks", we mean the "back-end web." This evokes concepts like REST, or HTTP, or WebSockets; and is built on technologies like Java, or Ruby, or Node.js. A "back-end web" framework helps you do things like build APIs, interact with databases, serve HTML files, and handle hundreds of thousands of simultaneous users. Sails is "that kind" of web framework.
几年前,我 promise 在所有事情上都使用 Node.js-it was love at first sight .我在 Express 上构建了 Sails和 Socket.io因为它们曾经(现在仍然是)针对各自用例的最完善的 Node 模块。 Sails 中的请求处理代码与 Express 兼容,并具有隐式支持 Socket.io 的额外优势。
Sails 旨在与您在 Angular、Backbone、iOS/ObjC、Android/Java 中构建前端的任何策略兼容,甚至只是提供一个原始 API 以供其他网络使用服务或您的开发者社区。如果你最终改变了你的方法(例如从 Backbone 切换到 Angular)或完全构建一个新的前端(例如构建一个 Windows Phone 原生应用程序),你的 Sails 应用程序仍然可以工作。您可能已经知道,有些人将这种方法称为面向服务的架构或 SOA(Joe McCann 对此主题有很好的介绍。)
同样,Sails 还保留了其他熟悉的用于构建 Web 服务器的约定——标准 MVC 结构、创建干净 API 的能力,以及开放、可配置、可扩展甚至可交换的核心模块。这意味着 Sails 可以根据用户的需求进行定制,尽可能低级。
在 2013 年,该框架的受欢迎程度出现了巨大的增长,我们的咨询业务也在增长。其余的核心维护人员和我扩大了我们的关注点,使后端开发尽可能快速和直接。由于我们的核心团队和整个(不断扩大的)Sails 社区的努力,Sails 的相关方面,如钩子(Hook)(插件)、测试和文档在过去一年都取得了长足的进步。我们仍在研究许多路线图项目,但我相信 Sails 是目前在 Node 上进行稳定、可维护的 MVC 开发的最佳选择。我和团队的其他成员都致力于它的持续维护和功能开发,由于我们将它用于我们所有的客户项目,它不会去任何地方。
我坚定不移地致力于让 Sails 成为目前最好的 Web 框架,但绝不会以牺牲 Node.js 为代价。我和核心团队一直致力于增强 Node 生态系统,这意味着拥抱 NPM,利用现有的 Node 技术和最佳实践等。不仅因为它更有意义,而且因为我们是 Node.js 开发人员。我们所有努力的动机是让 Node 更易于访问,而不是取代它。因此,如果在某个奇怪的平行宇宙中,让我在将 Sails 转换为其他语言或完全放弃 Sails 但仍然能够使用 Node 之间做出浮士德式的选择,我会选择后者。
其他资源:
FAQ | Sails 101 | Original screencast | Contribution Guide | Stackoverflow
Google Group | Roadmap | IRC: #sailsjs on Freenode | Build Status
关于javascript - Sails.js 与 Meteor - 两者的优势是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22202286/
根据文档,sails lift 将始终尝试使用本地安装的 Sails 模块(即 app/node_modules/sails)运行您的应用。 但是当我运行 sails console 时,我可以从堆栈
在我的sails.js我正在尝试关闭服务和模型的默认全局变量,如下所示: sails: true, services: false, models: false 作为一种风格偏好,我想明确使用 sai
我正在用 sails 框架编写一些 api。我有一个 api 需要从两个表中获取数据,所以我想使用这样的 sql 查询: select * from table1 union select * fro
根据 this , 在创建与其他记录关联的新记录时,响应应包含填充的关联记录。 POST /pony { "name": "Pinkie Pie", "pet": 1 } 响应应该是这样的 {
我已经开始从事一个项目,并决定使用 Sails.js 构建 API。我以前没有使用 Sails 的经验,这就是为什么我需要您的推荐。 我需要为许多模型实现行级权限。例如,假设我只想允许对该记录的创建者
我在一个使用 sail.js 的项目中工作,一切正常,但每次我修改某些内容时,我都必须重新启动“sails lift”。是否没有一个选项可以让我在服务器在线时工作并查看我所做的所有更改? 据了解,问题
当sails.js 模块上的电子邮件验证规则失败时,服务器正在崩溃。 这是我的模块的片段: //用户的电子邮件地址 email: { type: 'string', email: true,
我正在尝试在客户端使用 Sails.js 和 sails.io.js 创建一对一聊天。 我可以让 io.socket.get 和 io.socket.post 工作,但是我无法从任何一个 收到任何东西
我刚刚开始使用 Sails.js,它是一个了不起的框架。但是我遇到了一些情况,我找不到谷歌的解决方案,所以我来这里寻求帮助。 我有一个 Controller 连接到另一个远程服务,该服务使用非常旧的
我已经使用 npm install sails -g 成功安装了 sails我运行的是 Windows 7。当我尝试运行“sails”命令时,收到错误消息“找不到命令”。然后我将相应的 bin 文件夹
我正在使用带有船长-s3适配器的船长来处理我的 sails 应用程序中的文件上传。 当文件正常发送时它工作正常,但是当请求中止时我收到未处理的错误消息并且 sails 崩溃。 events.js:85
像 Rails 一样,有什么方法可以向验证器添加自定义错误消息吗? 喜欢: if(this.password != this.passwordConfirmation){ this.errors
我已经使用 npm install sails -g 成功安装了 sails我运行的是 Windows 7。当我尝试运行“sails”命令时,收到错误消息“找不到命令”。然后我将相应的 bin 文件夹
我需要查询关联表(由 sails 创建),所以我不能使用“Model.query”,因为我没有这个表的模型。我找不到解决方案。谢谢 最佳答案 您可以使用其他模型对象,例如 User.query(sql
仅当满足某些条件时,我才需要加密密码。 beforeUpdate: function (value, cb) { User.findOne(value.id) .exec(function (er
在我的风帆应用程序中,我按如下方式编辑 config/models.js 文件以在提升应用程序时清理数据库。 migrate: 'drop', connection: 'mongodb' 但是
我将sails 升级到@^1.0.0 版本,在开发API 时,我想使用Service,但Sails 文档建议现在使用Helper。而且我并没有真正习惯于使用新的方法来识别助手、构建脚本或 Action
我试图弄清楚如何禁用 Sails.js 中模型的自动数据库迁移。 我知道你可以设置migrate: 'safe'在模型中,但是有没有办法为所有模型指定这个? 最佳答案 实际上,有办法做到这一点。 OR
我正在开始一个新项目,我想使用 AngularJS 作为前端,使用 SailsJS 作为后端。我需要为不同的客户分离数据库。因此,每个客户端都必须有自己的数据库。 我没有找到如何在帆和水线中制作这个。
我从 SailsJS 开始和 MySQL ,我的数据库中有很多表。所以,我不知道 SailsJS有一个工具可以从数据库中生成模型,比如 Database First在 Entity Framework
我是一名优秀的程序员,十分优秀!