Я пытаюсь использовать переменную объекта в массиве для сравнения с пользовательским вводом, чтобы узнать, есть ли у них встреча в этом месяце. При запуске я получаю неопределенную ошибку метода за месяц после a [i]. Есть ли способ вызвать атрибуты, которые я перечислил?Почему я не могу использовать эту переменную?
class Month < Appointment
attr_accessor :des, :day, :month, :year
class << self
def occurOn2(a,uDay, uMonth, uYear)
appts = 0
for i in (0..10) do
if a[i].month == uMonth
puts "You're #{a[i].des} is scheduled for this month #{a[i].month} "
appts =+ 1
end
end
if appts < 1
puts "You do not have any appointments at this time."
end
end
end
end
Пожалуйста, прочтите «[mcve]». Вам нужно показать, как вызывается код. Я также предлагаю использовать правильный отступ. Это сделает ваш код более читабельным и более удобным. –
Да, мои извинения, у меня длинный список кода, поэтому подумал, что просто отправить часть, с которой я столкнулся, будет достаточно, но я не дал правильного объяснения. UDay, uMonth и т. Д. Введены пользователем, чтобы увидеть, есть ли что-то противоречащее дате. –
Я поместил все назначения в массив и хотел перекрестно проверить их с помощью ввода пользователя, за исключением того, что я получаю сообщение об ошибке для неопределенного метода при попытке получить месяц от объекта в массиве. –