1

コントローラーのindexアクションを呼び出すと、対応するテンプレートは次の行を含むレイアウトを使用します。assetsindexassets

<%= javascript_include_tag 'prototype'  %>

私が得るエラーは次のとおりです。

No route matches "/javascripts/prototype.js" with {:method=>:get}

これは私のルートファイルです:

ActionController::Routing::Routes.draw do |map|
  map.resources :assets
  map.connect ':controller/:action/:id'
  map.connect ':controller/:action/:id.:format'
end

ここで何が欠けている可能性がありますか?

このファイルのルートを明示的に定義する方法はありますか?

4

4 に答える 4

0

これは、javascripts というコントローラーがある場合にも発生する可能性があります。

于 2009-06-22T10:35:20.453 に答える
0

このためのルートを定義する必要はありません。.htaccess ファイルの書き換えルールによって処理する必要があります。

mod_rewrite が有効になっていること、および .htaccess ファイルが正しいことを確認する必要があります。要求されたファイルが公開ディレクトリに存在しない場合にのみ、dispatch.rb に要求を送信する必要があります。また、ファイルが存在することを確認する必要がある場合もあります。

于 2009-06-22T08:35:06.157 に答える
0

このファイルのルートを定義する必要はありません。このファイルが必要です。新しいプロジェクトを作成すると、Rails は Prototype ライブラリを javascripts フォルダーに保存します。

  create  public/javascripts/prototype.js
  create  public/javascripts/effects.js
  create  public/javascripts/dragdrop.js
  create  public/javascripts/controls.js
  create  public/javascripts/application.js

ファイルが存在することを確認してください。そうでない場合は、新しいプロジェクトを作成し、その /public/javascript フォルダーからファイルをコピーします。

于 2009-06-22T08:37:05.577 に答える
0

使用してみてください:

<%= javascript_include_tag :defaults  %>
于 2009-07-12T05:03:45.797 に答える