NameError uninitialized constant WorkoutLog
コントローラーでリソースのないアクションにアクセスしようとすると、エラーが発生します。
私のコントローラーは次のようになります。
class WorkoutLogController < ApplicationController
def index
# random code
end
def on_date
# random code
end
end
マイ ルート ファイル:
match "workout_log/:date", :controller => "workout_log", :action => "on_date", :as => "log_on_date"
match "workout_log", :controller => 'workout_log', :action => 'index'
そして、私はそのように私のlink_toを持っています:
<%= link_to "View Log", log_on_date_path(:date => Date.today.strftime('%d-%B-%Y')), :remote => true, "data-type" => "html" %>
WorkoutLogController の背後にはモデルがありません。これは単なるコントローラーです。ただし、次のエラーがスローされるため、on_date でリクエストを実行できません。
NameError (uninitialized constant WorkoutLog):
実行rake routes
すると、次のように生成されるため、問題ないようです。
log_on_date /workout_log/:date(.:format) {:controller=>"workout_log", :action=>"on_date"}
workout_log /workout_log(.:format) {:controller=>"workout_log", :action=>"index"}
問題が何であるかについて頭を悩ませることはできません(特に、昨夜それを理解しようとして過ごした後)。Rails はそれに関連付けるモデルを探していて、それに失敗していますか?