2011-04-08 43 views
3

我是新来的铁轨(使用铁轨2.3.10),并希望使用jQuery特别是jQuery UI。该项目是一个全新的项目,我打算使用jQuery UI中的一些小部件,如datapicker和selectable等。 我一直听说可以安装jrails来替换rails2中的原型,并且我有以下问题。jRails是Rails + jQuery必须的吗?

  1. 在开发新的导轨应用程序方面,带有和不带有jrails的导轨之间的区别是什么?
  2. 使用jrails的优点是什么?
  3. jrails是在我的rails应用程序中使用jquery ui小部件的必备条件吗?
  4. 任何推荐的教程集成jQuery插件特别是jQuery UI可选小部件到rails应用程序?

感谢 batterhead

回答

5

一起来,如果你正在写一个全新的项目,我会建议使用Rails 3,除其他事项外考虑,它实际上抽象了由滑轨使用的默认JS框架,因此,从Rails 3完全删除Prototype要容易得多。

就使用jQuery UI而言,没有什么能阻止您将jQuery和jQuery UI包含在项目中。原型和jQuery可以一起生活在你的应用程序中(尽管你需要设置一个标志,以便jQuery不会覆盖原型的“$”函数;如何做到这一点是另一个问题)。

jRails写入的唯一原因是因为Rails 2的RJS特性 - 在服务器上编写JavaScript模板的能力。原型与Rails的RJS功能有内在联系,因为RJS的所有辅助方法都可以转换为Prototype调用。在Rails 3中,该功能已被弃用,倾向于使用更多不显眼的JavaScript(UJS)技术,因此所有JS代码都停留在客户端。因此,对样机的依赖,不再对Rails 3


TL的问题; DR

  1. 没有jRails,所有的JavaScript生成的服务器端将转化为原型的JavaScript调用客户端 - RJS模板帮助方法,link_to :method => :delete调用等。

    使用jRails,所有这些服务器端方法将转换为jQuery调用客户端。

  2. 见上;生成JavaScript的Rails 2应用程序的服务器端助手将使用jQuery而不是原型。

  3. 编号jRails只影响JavaScript生成的服务器端。

  4. 可以包括与以同样的方式使用jQuery在你的应用程序,你会包括其他任何包含的JavaScript资源在导轨2.一旦jQuery的,使用它的纯HTML的没有什么不同,所以看jQuery UI tutorials上如何使用the datepickerselectable

另外,使用Rails 3,而不是Rails 2。

+0

+1有很好的信息,但是这并不能真正回答他的四部分问题 – 2011-04-08 06:35:27

+0

它只是不在点上。 – Chris 2011-04-10 04:46:35