Hegwin.Me
无边落木萧萧下,不尽长江滚滚来。
首页
工具
魔兽小宠物
喵呜词根
关于
Ruby命令行格式化输出
Format Your Output in Terminal with Ruby
Ruby
CLI
2019年12月27日
在命令行输出内容,一般而言Ruby基本的方法都是够用的,比如 puts、print、sprintf系列;但如果要在terminal输出颜色,表格进度条等,就会比较难以实现了。 这里小节下自己探索后感觉好用的gems: 彩色输出(基于ANSI):rainbow; 表格输出:terminal-table; 大综合(包含彩色、表格和进度条):formatador。 R...
在Ruby中运行系统命令
Execute System Commands in Ruby
Ruby
System Command
2019年12月11日
在Ruby中有若干种方法来调用系统命令: 1. 反引号或者 %x(); 2. system 方法; 3. File; 4. Open3。 反引号及 %x() 与 system 的区别在于: system 只会返回 true/false;而`%x`在命令执行成功时,会返回命令的stdout,当命令支持失败时,会返回空字符串 `""` 这样看来其实反引号或者 `%x...
Ruby中目录和文件操作的几种方式
Different methods in Ruby to manipulate directories and files
Ruby
2019年6月20日
创建目录: 方法一:利用 Dir.mkdir 可以创建一个目录,并且其有一个可选参数用来标记目录的权限。 如我要在 /Users/hegwin/Workspace 目录下创建一个 `ruby` 子目录,那么可以这么操作: Dir.mkdir('/Users/hegwin/Workspace/ruby') 正常创建后,Dir.mkdir 会返回整数 0。 这个方法和Li...
Ruby 2.5 允许在do/end代码块中使用rescue
Ruby 2.5 allows rescue/ensure inside do/end blocks
Ruby
2018年1月31日
本文介绍Ruby2.5的一个新特性:在以前的Ruby版本中,如果你需要用的rescue来捕获和处理异常,你必须要把可能抛出异常的代码放在 begin end 块中,而在Ruby 2.5中,普通的 do end 块中你也可以直接使用 rescue 和 ensure 等异常处理的关键字了。注意这个功能不是向下兼容的,如果使用2.4则会遇到错误。
Rails优化SQL可能用到的工具
Tools to Help to Improve SQL in Rails
Ruby
Ruby on Rails
SQL Performance
2017年9月27日
你是否遇到过遇到 Rails app 在渲染页面很慢的情况? 你是否想找到造成它“慢”的原因?性能瓶颈究竟在哪里?是它执行 SQL 查询数据慢(可能是N+1,或者是没有合适的索引),还是其他的原因,比如view太大? 进行性能优化一直是一个典型的“难定位”问题;目前我个人是用到了以下几个工具去找出问题到底在哪里: 1. New Relic 老牌的性能检测工具,与Rails集成之后...
Selenium driver 对 JS Confirm 的处理
How to handle javascript confirm with selennium webdriver
JavaScript
Selenium
Ruby
2014年7月21日
在Web开发中经常会使用JS弹出确认框,在feature测试脚本如何处理这个弹出框呢? page.driver.browser.switch_to.alert.accept # => 点击OK page.driver.browser.switch_to.alert.dismiss #=> 点击 Cancel page.driver.browser.switch_to.a...
利用Ruby调用TTS进行文本发声阅读
Invoke System TTS in Ruby
Ruby
System Command
TTS
2013年9月1日
我想做一个小程序,我给他一组英语单词,他能随机读出里面的单词。之所以有这么一想法,是因为我在学习英语的时候,想找个单词报听写的app,但是一直找不到合适的,不如自己试试搞一个。 于是就去找找调用TTS(text to speech)的工具了。我在简单调查之后发现,在Linux下面可以使用Festival TTS,而Windows 7系统默认是有一个TTS的模块,我们直接调用系统的TTS...
如何Sinatra部署项目
How to develop Sinatra project
Ruby
Sinatra
2013年1月8日
Sinatra和Rails一样都是基于rack的应用,在部署前,在sinatra项目的根目录下面加上一个config.ru的文件,内容如下 require "myapp" # 项目主文件 run Sinatra::Application # 如果是定义的子类,则直接用自己定义的类的名字。 这之后的过程基本就和rails的部署没有什么不同了,以下以 Nginx + Passeng...