我不斷收到此錯誤:未定義的方法`output_data」爲#<eventmanager進行:0x007fa4220320c8>(NoMethodError)
event_manager.rb:83:in
': undefined methodoutput_data' for #<EventManager:0x007fc5018320c0> (NoMethodError)
我下面的練習on this website:
這裏是我的代碼(我的錯誤出現接近年底與DEF OUTPUT_DATA
...):
# Dependencies
require "csv"
# Class Definition
class EventManager
INVALID_PHONE_NUMBER = "0000000000"
INVALID_ZIPCODE = "00000"
def initialize
puts "EventManager Initialized."
filename = "event_attendees.csv"
@file = CSV.open(filename, {:headers => true, :header_converters => :symbol})
end
def print_names
@file.each do |line|
puts line.inspect
puts line[2] + " " + line[3]
end
end
#printing home phone number method
def print_numbers
@file.each do |line|
number = clean_number(line[:homephone])
puts number
end
end
#cleaning numbers method
def clean_number(number)
cleaner= number.delete('.' + ')' + '(' + '-')
if cleaner.length == 10
# Do Nothing
elsif cleaner.length == 11
if cleaner.start_with?("1")
cleaner = cleaner[1..-1]
else
cleaner = INVALID_PHONE_NUMBER
end
else
cleaner = INVALID_PHONE_NUMBER
end
return cleaner
end
def clean_zipcode(original)
if original.nil?
zipcode = INVALID_ZIPCODE
elsif original.length < 5
while original.length < 5
original = original.insert(0, "0")
end
else
return original
end
return zipcode
end
def print_zipcodes
@file.each do |line|
zipcode = clean_zipcode(line[:zipcode])
puts zipcode
end
def output_data
output = CSV.open("event_attendees_clean.csv", "w")
@file.each do |line|
output << line
end
end
end
end
# Script
manager = EventManager.new
#manager.print_numbers
#manager.print_zipcodes
manager.output_data
我已經試過幾件事情,檢查了所有通過互聯網,我只是不能找出自己。
我真的很感激任何的幫助。
預先感謝您!
Hi @David,我是新來張貼這裏,我看到你對我原來的帖子做了一些更正。我只是想知道他們爲什麼需要?我的意思是,那是不對的?謝謝! –
這只是一些美容改變。像大寫字母並將代碼放入代碼塊中。 – 0x499602D2
好的,謝謝。 –