Ruby for CodeAcademyのチュートリアルthisを使って作業しようとしています。次のコードは私にエラーを与えているRubyの初期化されていない定数
「初期化されていない定数一覧::タスク(NameError)to_do.rbから :2:メインの」
が、私はこれはListクラスがされていないに関連する可能性があることを理解Taskクラスにアクセスすることはできますが、どこが破壊されるのか分かりません。コードは以下の通りです。あなたはこのライン
my_list.add(Task.new('Make Breakfast'))
Task
が定義されていない実行瞬間
#list class
class List
attr_reader :all_tasks
if __FILE__ == $PROGRAM_NAME
my_list = List.new
puts 'You have created a new list'
my_list.add(Task.new('Make Breakfast'))
puts 'You have added a task to the Todo List'
end
def initialize
@all_tasks = []
end
def add(task)
@all_tasks << task
end
end
#class task
class Task
attr_reader :description
def task_item(desription)
@new_item = description
end
end
エラートレースはありますか? – alseether
'__FILE__ == $ PROGRAM_NAME'です。これをクラスの外に移動するか、メソッドを呼び出します。これが真と評価されると、それは実行され、まだ定義されていないタスクにアクセスしようとします。 'initialize'からこのメソッドを呼び出すことは良い習慣です。 – Sairam