今天,我开始使用Thor,并且需要验证Thor::Shell::Basic#ask
的返回值。不能为nil
或为空。这就是我所做的:
module Helpers
def self.validate(var, error_msg = "")
var = Thor::Shell::Basic.new.ask error_msg while var.empty? || var.nil?
var
end
end
然后我在我需要的“请求”中调用Helpers::validate
:
ask1 = ask("Set ask1:")
ask1 = Helpers::validate(ask1, "Error: you must set ask1")
请告诉我更好的方法。我尝试搜索“需要的询问方法”,但只能找到“必需的选项”,这不是我想要的。
谢谢。