【问题标题】:Javascript Frameworks with Rails [closed]带有 Rails 的 Javascript 框架 [关闭]
【发布时间】:2012-01-29 13:51:26
【问题描述】:

希望有人能帮我解决问题。

我一直在阅读大量关于新的 javascript 应用程序框架、backbone.js、batman.js、ember.js 等的信息......

我看到很多使用 Rails 之上的框架的实例。

谁能给我解释一下。这不需要大量重复才能使用它们吗? IE。我需要完全复制每个模型和控制器吗?如果是这样,我是否需要每次都进行更改?

我看到在浏览器上呈现模板有很大的好处,但我觉得在已经组织良好的 MVC 结构上使用这些模板时我错过了一些重要的东西。

有什么好处?是否真的有看起来那么多的重复?

我已阅读问题here

但它似乎没有解决重复问题。

提前致谢。

【问题讨论】:

  • 我的看法和 OP 一样。 rails 的构建方式,lego 缺少的部分将是资产队列中的一些中间件,它将根据约定(即 rails 原则)为您提供模型、控制器和视图的 javascript 等价物。这个和一些机制可以在需要时覆盖其中的任何一个。我真的没有看到必须维护和同步 rb 模型以及在 javascript 中非常相似的东西的乐趣。这个所需的功能非常明显,我相信有人会为此想出一个好的解决方案。在那之前,我会坐下来监视情况:)

标签: ruby-on-rails-3 ruby-on-rails-3.1 backbone.js javascript-framework ember.js


【解决方案1】:

您链接到的问题中描述了这些好处。它们提供了当您是客户端时很难实现的结构,而不仅仅是显示数据和使用 AJAX 重新加载视图的一部分。

Andrew Dupont 就编写可维护的 JavaScript 提供了 presentation at MIX 11。他描述了他从一堆发臭的 JS 到更易于维护的代码库的旅程。值得一看。

复制取决于你在服务器端做了多少。如果您的服务器仅提供数据,例如Rails 控制器提供 JSON API 来访问模型,您必须在客户端复制模型。

我仅将 Rails 用于 JSON 访问,以持久保存我的应用程序的实体,一些 JSON 视图除外。整个用户交互和 CRUD 发生在使用 Backbone 和 jQuery 的客户端上。

到目前为止,我只需要在 Javascript 中复制模型并创建一些控制器来访问和保存服务器上的模型。

【讨论】:

  • 感谢 wieczo 的回复。我将不得不进一步研究在典型的 CRUD 情况下您使用 Rails 控制器与 Backbone 控制器的情况。
猜你喜欢
  • 2012-12-13
  • 2012-04-10
  • 2012-06-01
  • 2011-09-19
  • 2013-06-22
  • 2013-09-22
  • 2010-11-20
  • 2012-03-17
相关资源
最近更新 更多