

ネットで調べると原因はファイル名とクラス名の不一致と書いてあるのですが、ファイル名が `timelists_controller.rb`
でコードは以下の通りでクラス名と一致しています。解決方法を教えてください。

[code]

    class TimelistsController < ApplicationController
      before_action :require_user_logged_in
      def index
        @timelists =  Timelist.all
      end
      def create
        @timelist = Timelist.new(time_params)
        if @timelist.save
          flash.now[:success] = "投稿しました。"
          render "toppages/index"
        else
          
          flash.now[:danger] = "投稿できませんでした。"
          render "toppages/index"
        end
      end
      
      def destroy
        @timelist = Timelist.find(params[:id])
        @timelist.destroy
        
        flash.now[:success] = "行動を記録しました。"
        render "times.index"
      end
      
      def time_params
        params.require(:timemanagement).permit(:content)
      end
    end
    
[/code]


CC BY-SA 4.0
2020-08-03T08:04:11.090
69202
2020-08-03T15:24:58.887
2020-08-03T08:31:14.300
3060
41348
question
ruby-on-rails ruby
uninitialized constant TimelistsController::Timelistとなる


`TimelistsController` クラス内のメソッドで `Timelist`
を参照していますが、それがどこにも定義されていないために、`uninitialized constant` になっています。

`TimelistsController` 配下で `Timelist` が定義されるか、またはトップレベルで定義されていればエラーにはなりません。


CC BY-SA 4.0
2020-08-03T15:24:58.887
69220
2020-08-03T15:24:58.887
3249
69202
answer