我目前从原型切换到jquery,主要是为了支持简单的ajax文件上传。我使用:https://github.com/indirect/jquery-rails
95%的javascript代码是由rails助手生成的,例如:
- remote_function
- render :update do |page|
- page.replace_html 'id', :partial => 'content'
- page['form']['name'] = something
- page.visual_effect :highlight, 'head_success'
...
我知道5%的代码纯粹是原型,我必须为Jquery重写它,但其余的呢?我必须在原始jquery中重写所有内容吗?
我使用:
- 轨道3.0.7
- jquery rails 1.0.7
所有这些助手都被弃用,取而代之的是不引人注目的javascript(如果您正在使用jQuery或PrototypeJS)。
你可以在这里找到详细的指南:
http://www.simonecarletti.com/blog/2010/06/unobtrusive-javascript-in-rails-3/
jrails-plugin/gem将rails原型助手(如page.replace_html、page.vision_effect)转换为使用jquery而不是原型。使用它,您就不必更改任何代码,除了您所说的纯原型代码。
http://mirror.ozdiy.com/assets/b8/2f96a12bc919b37e09d303b86ea1b9_1251811910.html
https://github.com/aaronchi/jrails/
jQuery rails gem有一个rake:install任务,在运行时更新rails.js助手并用jQuery.js 替换prototype.js