我想做的是这样的事情:
searchid = 4
while searchid != -1
@a += A.find(searchid)
@b = B.find(searchid)
searchid = @b.parentid
end
问题是行
@a += A.find(searchid)
错误类似于
NoMethodError: undefined method `+' for #<A:0x173f9a0>
那么,如何组合多个“查找”请求?
答案 0 :(得分:0)
您必须在@a = []
之前将+=
初始化为数组。
searchid = 4
@a = []
while searchid != -1
@a += A.find(searchid)
@b = B.find(searchid)
searchid = @b.parentid
end
您可以将它们合并为:
searchid = 4
@a = []
while searchid != -1
@a += A.find(searchid)
@a += B.find(searchid)
searchid = @a.last.parentid
end
答案 1 :(得分:0)
让它工作(有帮助)。 做了以下事情:
@a = []
带
@a << A.find_by_something(something)
似乎有效。
还使用@a.compact!
来删除空条目。
感谢所有帮助:)