我有以下两种方法:
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?
是如何未定义的?
因为帮助程序方法#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