Ruby “为什么我会得到未定义的方法错误?”;条状;及;唐卡斯;当我在我的模型上运行RSpec时?

Ruby “为什么我会得到未定义的方法错误?”;条状;及;唐卡斯;当我在我的模型上运行RSpec时?,ruby,testing,rspec,Ruby,Testing,Rspec,我正在一个模型上运行一个RSpec测试,并得到字符串方法的错误,例如:“index”、“downcase”和“strip”。你知道为什么会这样吗?我如何修复它?如果你得到的是“undefined method”,则您正在操作的对象可能不是字符串。在调用.strip等之前,请尝试从.class打印结果,并查看您正在处理的对象类型。通常返回字符串的函数可能会在出错时返回非字符串(如nil),您可能无意中操作了类似的内容。Yes!谢谢,bta,成功了。我在打电话之前指定了.to_s.strip,效果很

我正在一个模型上运行一个RSpec测试,并得到字符串方法的错误,例如:“index”、“downcase”和“strip”。你知道为什么会这样吗?我如何修复它?

如果你得到的是“undefined method”,则您正在操作的对象可能不是字符串。在调用
.strip
等之前,请尝试从
.class
打印结果,并查看您正在处理的对象类型。通常返回字符串的函数可能会在出错时返回非字符串(如
nil
),您可能无意中操作了类似的内容。

Yes!谢谢,bta,成功了。我在打电话之前指定了.to_s.strip,效果很好。如果没有.to_,按照计划执行条带和停机,应用程序似乎运行良好。RSpec对这一类型的描述很清楚。再次感谢。