使用以下代码行,我试图将一个元组插入@test_results
的{{1}}数组:
@test_object
但它引发了以下错误:
@test_object.@test_results << [@u, @m, @r, @p]
为什么Ruby期待'('?
答案 0 :(得分:4)
问题是,为什么要输入.@test_results
?这不是从对象外部访问对象的实例变量的正确方法。这就是你有这个错误的原因。
您可能应该在@test_object
所属的班级中拥有访问者:
attr_accessor :test_results
或只是读者,如果您不需要test_results=
方法:
attr_reader :test_results
前者相当于:
def test_results
@test_results
end
def test_results=(value)
@test_results = value
end
后者相当于:
def test_results
@test_results
end
然后,您只需输入:
即可@test_object.test_results << [@u, @m, @r, @p]