はじめまして.Railsは未経験ですが,フレームワーク特有の問題ではないようなので回答させていただきます.
エラーの内容の整理
画像ではタイトルに NameError in TaskController#index とありますが,これは 「TaskControllerのindexでNameErrorが発生しました」 という意味になります.詳しいことは存じませんが,使われている変数や定数などの名前がおかしいということが示されています.
また,in TaskController#index という記述から,TaskControllerクラスのindexメソッドの部分でエラーを検知したことが分かります.実際,コードのindexメソッドに含まれる行@task = Task.all
が赤く表示されています.
ここで,タイトル下の uninitialized constant TaskController::Task に着目します.これは 「TaskController::Task(TaskControllerクラスの定数Task)は初期化されていない定数です」 といった意味になります.
このことから,定数Task
がTaskControllerファイル内で初期化されていない(定数そのものが宣言されていない,あるいは最初に持つ値が設定されていない)ためにエラーが起きていることが分かります.
エラーの解決方法(予想です)
本題の解決方法ですが,Task = 定数Taskに入れたい値
のような記述をTaskControllerあるいはApplicationControllerに追加するとエラーが解決できるかと思います.
そして,定数Taskに入れたい値
に何を入れるかですが,Task.all
という記述を見るにTask
は配列として使いたいとお考えなのではないかと思います.なので,Task = ["掃除", "洗濯", "料理"]
のような記述をindexメソッドの手前に追加します(配列の中身は一例です).
以上を基にTaskControllerのエラー発生箇所を書き換えると,以下のようになります.
class TaskController << ApplicationController
Task = ["掃除", "洗濯", "料理"]
def index
@tasks = Task.All
end
長々と予想を立てて書いてみましたが,解決のお役に立てれば幸いです.