Rails 如何以 rails 作为数据源,开发单页面应用?

sammo · 2015年02月21日 · 最后由 sammo 回复于 2015年04月21日 · 3232 次阅读

我目前有一定的 rails 基础,想开发单页面应用(重度依赖 AJAX) GOOGLE rails single page app 之后,我的思路是 在数据部分,让 rails 提供 JSON 格式的 API 在展示部分,用某个 js 框架来处理 路由/

看了一下 Angular.js,网上的资料大多是从头开发一个 和 rails 无关的东西

不知论坛前辈试过 rails + js 框架 的 单页面应用 吗?

我目前开发几乎都是这么干的……rails 提供 api,angular 读取 api,开发 angular 和正常写 views、html 没有任何区别,一样是写在 views 下。 不过如果 lz 对 ruby 比较熟悉用 sinatra 做提供 api 的服务器也可以…

Rails 和 emberjs 关系更暧昧一点。资料相对来说多一点。 不管是 angularjs 还是 emberjs,或者其他 mv*框架,都建议前后端完全分离。rails(api)+yeoman+grunt+bower+angular-generate 组合会简单一点。 新年快乐。

这个问题其实是等价于:

如何使用 Rails 提供 JSON API?

可以尝试以下方案:

  1. grape
  2. rails-api
  3. rails + jbuilder, 这个方案非常不错。
  4. lina, lina 是我最近刚开发的一个 API 框架,几乎与 第 3 方案一致,还可以自动生成 API 文档。

Emberjs 方面,有几个例子可以看看:Ember-CRM, Ember-Todo

照你的思路,Rails 只是单纯提供 API 而已,那么下面这句话无关紧要

「看了一下 Angular.js,网上的资料大多是从头开发一个 和 rails 无关的东西」

反正后端是否是 Rails 都无关

一个例子 AngularJS 与 Rails 的混合模式最佳实践 https://ruby-china.org/topics/24828

Ember.js + rails 做 前后短分离,相关讨论 https://ruby-china.org/topics/24646

需要 登录 后方可回复, 如果你还没有账号请 注册新账号