我有以下两种方法:
class OrderHelper
def is_numeric?
true if Float(self) rescue false
end
def order_number_or_name(order_ref)
if order_ref.is_numeric?
"Your Order Reference Number: "
else
"Your Order Reference Name: "
end
end
end
我收到以下错误:
undefined method `is_numeric?' for "85757858":String
当我在第二种方法上方声明它时,is_numeric?
如何定义?
答案 0 :(得分:2)
因为帮助程序方法#is_numeric
不是String
实例的实例方法。将您的代码更改为:
def is_numeric? order_ref
true if Float(self) rescue false
end
使用如下:
def order_number_or_name(order_ref)
if is_numeric?(order_ref)
"Your Order Reference Number: "
else
"Your Order Reference Name: "
end
end