3

私のコントローラーの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]})

私は何が間違っているのですか?

4

1 に答える 1

7

この記事の執筆時点では、Railsはコーヒースクリプトファイルでの応答をサポートしていません。ただし、これは変更されます。

一方、Gemfileに次を追加します。

gem 'coffeebeans'

次に、ビューにaction.js.coffeeという名前を付けます

追加のボーナスとして、ファイル名で宣言されていない場合でも、ファイルは最初にerbを通過します。

于 2011-08-01T18:59:10.960 に答える