ruby-on-rails – 在Ruby on Rails的IRB上停止加载脚本执行的最
发布时间:2020-12-17 02:34:15 所属栏目:百科 来源:网络整理
导读:寻找在 Ruby on Rails的IRB上退出已加载脚本的最佳方法. Kernel.exit Kernel.abort会让你完全退出IRB会话.理想情况下,这会在某些条件标准上发生. 我的脚本/ my_script.rb: puts "My Script is running!"# if some criteria,stop execution of this script w
寻找在
Ruby on Rails的IRB上退出已加载脚本的最佳方法. Kernel.exit& Kernel.abort会让你完全退出IRB会话.理想情况下,这会在某些条件标准上发生.
我的脚本/ my_script.rb: puts "My Script is running!" # if some criteria,stop execution of this script without stoping IRB puts "This will never happen" 理想的结果: $rails console irb(main):001:0> load 'script/my_script.rb' My Script is running! irb(main):002:0> 解决方法
使用__END__关键字来停止解析器.
puts "My Script is running!" __END__ puts "This will never happen" ... 或者只是注释掉脚本的其余部分(如果在___END__之后需要格式良好的数据流) puts "My Script is running!" =begin puts "This will never happen" ... =end 如果你需要根据逻辑而不是在固定点提前退出,你可以将脚本的主体放在一个函数中,然后尽早返回. def do_work puts "My Script is running!" ... return if exit_condition? puts "This will never happen if exit condition is true" ... end do_work 或者,将您的脚本放在开始块中并挽救您引发的异常 begin puts "My Script is running!" raise SystemExit if exit_condition? puts "This will never happen if exit condition is true" rescue SystemExit end (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |