Javascript 关于在Sinatra上使用express.js而不是Ruby的想法?
我正在开发一个社交应用程序,并考虑使用express.js/nodejs代替我最初的选择Sinatra/Ruby 我最担心的是Ruby中有多少开源项目可以帮助快速完成任务。第二个主要问题是express.js的稳定性/成熟度和完整性 欢迎任何反馈和评论。关于此主题,已经有几个(类似的)问题:Javascript 关于在Sinatra上使用express.js而不是Ruby的想法?,javascript,ruby,node.js,sinatra,express,Javascript,Ruby,Node.js,Sinatra,Express,我正在开发一个社交应用程序,并考虑使用express.js/nodejs代替我最初的选择Sinatra/Ruby 我最担心的是Ruby中有多少开源项目可以帮助快速完成任务。第二个主要问题是express.js的稳定性/成熟度和完整性 欢迎任何反馈和评论。关于此主题,已经有几个(类似的)问题: 我最担心的是在中国有多少开源项目 Ruby可以帮助快速完成任务 这是因为Ruby比node.js旧得多。我认为比库的数量更重要的是它们中有多少是以非阻塞方式构建的。如果您比较Ruby和node.j
尽管与RoR或Sinatra相比,express相对年轻,但已经有一些在express之上成功构建的产品。希望这个答案能帮助您。这个周末我试着做类似的事情。作为
Rails
的长期支持者(在精通Rails 3.2.1
之后,我决定在本周末跳槽,转而使用Nodejs
。作为一名普通的JavaScript程序员,我认为这将是一件有趣且具有挑战性的事情
我甚至从Peepcode上买了一个Nodejs的屏幕。所以,我坐下来,启动Textmate,启动一个简单的Nodejs项目,然后用Twitter训练营调整一下,这个应用程序开始看起来很棒了,IMHO
然后,我开始添加数据库支持。然后,砰。事情很快就发生了。我必须找到一个非阻塞的Postgresql驱动程序。很好。找到了一个。什么?我必须手动创建SQL查询?但我对ActiveRecord太着迷了?好吧,似乎有AR类型的node框架。但我使用的教程是Express。等等,Nodejisu推荐的Flatiron。好的,Flatiron看起来很有希望。但是等等,我开始看Flatiron用于数据管理的示例。他们称之为“足智多谋”?我发现了一个关于狼吃松鼠的数据管理的例子。在哪里,并且属于许多
例子?我如何告诉Flatiron我的笔记
模型是多态的,它属于旅行
和费用
我肯定他们在外面,但我找不到
但它变得更好了。天哪。我本以为我讨厌迁移,直到我不得不启动pgAdmin和/或Navicat来手动创建数据库。然后我不得不手动创建表…哦,糟了。我在pgAdmin中弄乱了一列。但它不允许我更改它!所以我不得不重新启动整个表的创建。啊。天哪,我缺少了一个生成器ndrake db:此时迁移
然后我意识到我花了整个周末(好吧,我只有很少的时间来编码),我所要展示的就是一个很棒的静态HTML页面,它是非功能性的
关键是,若你们擅长Rails,那个么Nodejs将是一个重要的转变。也许你们喜欢这个?也许不喜欢
周末结束时,我意识到了一些事情。我的新应用程序将非常注重用户界面,并将向后端服务器来回发送JSON。Rails为此提供了一个极好的工具带。Rails非常乐意使用JSON。事实上,我的应用程序将是通过nginx提供的静态HTML页面,Rails将驱动数据层与控制器
我的建议是学习Express/Nodejs,如果你想从头开始开发过程的每一部分。如果你想构建自己的查询字符串。如果你想手动完成所有事情。也许你喜欢。也许你有让世界变得更简单的想法。也许你想使用Tower.js或Flatiron.js或其他一些Nodejs框架
或者,也许你和我一样,你有一个该死的应用程序想要完成。然后使用Rails。我在Node方面确实没有经验,但我觉得这个回答有误导性。ActiveRecord是一个ORM。一个“Node js ORM”的谷歌让我直截了当地了解到它看起来会起作用。还有一个问题消除了对ORM的需求。此外,问题是关于Node.js和Sinatra。没有提到Rails。OP询问了我们关于使用Express与Ruby或Sinatra的“想法”。当然,使用Ruby时不必使用Rails,但当我回答这个问题时(2012年),Rails对Ruby的影响很大。因此,我的意图是传达我(当时)的想法和经验,用基于节点的API开发web应用程序。@cbmeeks从技术上讲,最初的问题是Ruby on Sinatra。不是Ruby或Sinatra。只是澄清一下。