ruby-on-rails - 如何在rails3.1中使用ajax?

标签 ruby-on-rails ruby ajax ruby-on-rails-3 coffeescript

众所周知,Rails 3.1 使用的是 CoffeeScript 和 JQuery。

我处理 ajax 请求的旧方法是将请求响应到名称为 some_action.js.erb

的模板

现在我们有了 CoffeeScript,我希望我的模板可以使用 coffeescript 语法。那我该怎么做呢?

只是改变模板文件的后缀名?

some_file.js.coffee 这在 assets/javascript 目录中工作正常。

但是我正在处理 ajax 请求,它的模板在文件夹 views 下,如果只是简单地将模板名称从 some_action.js.erb 更改为 some_action.js.coffee.erbsome_action.js.coffee,它不起作用,rails 将其视为普通文件,不会将其从 coffeescript 语法编译为普通 javascript。

我很抱歉我的英语能力,希望这次我的问题能解释我的目的。

最佳答案

假设您已经升级到 Rails 3.1,就像您建议的那样,利用新语法就像将文件转换为 CoffeeScript 一样简单。

现在,您不能只将文件命名为 *.js.coffee 并期待转换,但 Railscasts 的 Ryan Bates 建议手动更改文件,这是您自己学习语法的好方法。事实上,他有一个他这样做的截屏视频:http://railscasts.com/episodes/267-coffeescript-basics

然后,Rails 将为您处理从 js.coffee 到 .js 的编译。

关于ruby-on-rails - 如何在rails3.1中使用ajax?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7087457/

相关文章:

ruby-on-rails - 如何为 I18n 设置 raise_on_missing_translations

html - 在 Rails spree 中将链接设为按钮

ruby-on-rails - Rails 3 : How to identify after_commit action in observers?(创建/更新/销毁)

ruby - Watir ... sleep 和等待之间的区别

javascript - 跨多个页面组织不显眼的 JavaScript 的最佳方式是什么?

ruby - 如何使用 Ruby 测试 SSH 连接

json - 带 API 的 Ruby 传递 header

ajax - Symfony2 : How to get a current route in Ajax controller?

javascript - 如何正确销毁 Paper.js Scope

java - 使用 Tapestry 的 Bootstrap 模式内的 Ajax 区域形式