Reputation: 673
In ruby, how can I convert a function response into array for later usage?
array = []
def function (subject1)
results = client.get('/subjects', :genre => subject1)
results.each { |r| puts r.title }
array << r.title
end
function(subject1)
My code looks like something similar above. My results however are never stored. Please and thanks for your help :)
Upvotes: 0
Views: 296
Reputation: 524
Or you can make array a global var
$array = []
def function (subject1)
results = client.get('/subjects', :genre => subject1)
results.each { |r| $array << r.title }
end
function(subject1)
Or you can do this
array = []
def function (subject1)
results = client.get('/subjects', :genre => subject1)
results.each { |r| puts r.title }
end
array = function(subject1)
Upvotes: -2
Reputation: 80065
"My results however are never stored" - store the result then:
result = function(subject1)
Upvotes: 1
Reputation: 4837
Each method will iterate through every element whereas map would return an array in itself.
def function(subject1)
results = client.get('/subjects', :genre => subject1)
results.map { |r| r.title }
end
function(subject1)
Upvotes: 2