在大量文本应用程序中出现未定义的错误

Getting undefined error in mass text app

我正在创建一个应用程序,它使用包含号码和姓名的 JSON 文件发送群发短信。每次我在 IRB 中测试加载应用程序时,我都会收到错误消息:

NameError: undefined local variable or method `data_from_file' for main:Object
        from /home/qc/tep/Coding Stuff/Ruby/text app/main.rb:14:in `contacts_from_file'

我明白这个错误是什么意思,但我不明白为什么我会收到这个错误,这里是源代码:

require 'json'

def sanatize(numbers)
    "+1" + number.gsub(/^1|\D/, "")
end

def numbers_from_file
    file = open('numbers.json').read
    JSON.parse(file)
end

def contacts_from_file
    contacts= { }
    data_from_file['feed']['entry'].each do |entry|
        name = entry['gsx$name']['$t']
        number = entry['gsx$number']['$t']
        contacts[sanatize(number)] = name
    end
    contacts
end

def contact_numbers
    contacts_from_file.keys
end

def contact_name
    contacts_from_file[number]
end

这里是 JSON 文件:

{ 
    '1**********' => 'Big Bird'
    '1**********'} => 'Josh'
}

如果有人能帮助我并告诉我为什么 data_from_file 是 "undefined",那将非常有帮助,提前谢谢。

您永远不会定义 data_from_file,您只是尝试在 contects_from_file 方法中读取它。

也许您的意思是 numbers_from_file 而不是 data_from_file