Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在Rails中使用CoffeeScript?_Javascript_Ruby On Rails_Templates_Coffeescript_Controller Action - Fatal编程技术网

Javascript 如何在Rails中使用CoffeeScript?

Javascript 如何在Rails中使用CoffeeScript?,javascript,ruby-on-rails,templates,coffeescript,controller-action,Javascript,Ruby On Rails,Templates,Coffeescript,Controller Action,在我的控制器的create操作中,我有以下内容: def create @article = Article.find(params[:id]) respond_to do |format| if @comment.save format.js { render 'success.js' } else format.js { render 'failed.js' } end end end 在我的app/views/comments

在我的控制器的
create
操作中,我有以下内容:

def create
  @article = Article.find(params[:id])

  respond_to do |format|
    if @comment.save
      format.js { render 'success.js' }
    else
      format.js { render 'failed.js' }
    end
  end
end
在我的
app/views/comments/failed.js.coffee
中,我有:

alert 'Write smth!' if $("#comments_error").length == 0
我收到以下错误:

ActionView::MissingTemplate (Missing template comments/failed,
  inherited_resources/base/failed, application/failed with
  {:locale=>[:en, :en],
   :formats=>[:js, :html],
   :handlers=>[:haml, :builder, :erb]})

我做错了什么?

在撰写本文时,Rails不支持使用咖啡脚本文件进行响应。 然而,这种情况将会改变

同时在您的文件中添加:

gem 'coffeebeans'
然后将视图命名为action.js.coffee


作为额外的奖励,文件将首先通过erb,即使文件名中没有声明。

我还有一个问题,如果我的action.js.coffee文件中有一些ruby代码,我应该怎么做?我尝试将action.js.coffee重命名为action.js.coffee.erb,但收到错误:ActionView::MissingTemplate