小编Jim*_*ato的帖子

有没有更好的方法来检查Ruby中的Nil或Length == 0字符串?

是否有比下面更好的方法来检查字符串是否为零或在Ruby中长度为0?

if !my_string || my_string.length == 0
  return true
else
  return false
end
Run Code Online (Sandbox Code Playgroud)

在C#中有方便的

string.IsNullOrEmpty(myString)
Run Code Online (Sandbox Code Playgroud)

有类似于Ruby的东西吗?

ruby

168
推荐指数
9
解决办法
12万
查看次数

Ruby on Rails的持续集成?

我一直在寻找Ruby on Rails的持续集成解决方案,但对结果并不太满意.我来自一个使用CruiseControl.NET的.NET商店,它的易用性和丰富的状态/报告真的被宠坏了.

理想情况下,我在寻找:

  • 明显的Git/SVN和Test :: Unit集成

  • 与Rake和/或Capistrano集成

  • 显示构建状态的Web界面

  • 失败构建的电子邮件通知.

  • 桌面通知(可能通过Growl)

  • 用于构建状态的REST API

  • 插件框架,用于在UI中运行其他代码分析工具和报告结果

ruby continuous-integration ruby-on-rails

149
推荐指数
12
解决办法
4万
查看次数

Rails中友好的字节格式

我需要将字节的整数表示格式化为友好的东西,我希望在Ruby或Rails中有一个实用函数可以为我做格式化(当然是为了使我的懒惰永久化.)

我正在寻找一些看起来像的东西:

format_bytes(1024)     -> "1 KB"
format_bytes(1048576)  -> "1 MB"
Run Code Online (Sandbox Code Playgroud)

看起来ActiveSupport中有一些东西可以反过来做,但我还没有找到一种方法来实现这个目标.

如果没有一个存在,有没有人有一个特别优雅的解决方案?

ruby ruby-on-rails

15
推荐指数
1
解决办法
7160
查看次数

是否有可靠的方法来确定浏览器选项卡或窗口是否处于非活动状态?

我有一个javascript计时器,它不断地(每10秒一次)发出XMLHTTP请求.我希望能够在窗口或标签失去焦点时暂停计时器.

我完全了解对象上的事件onFocusonBlur事件window,但它们并不能在所有浏览器中可靠地触发.例如,在Safari中,选项卡不会触发事件.

下面的简单代码提炼了我正在寻找的功能:

<html>
  <head>
    <title>Testing</title>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/prototype/1.6.0.2/prototype.js"></script>
  </head>
  <body>
    <div id="console"></div>
    <script type="text/javascript">
      window.onfocus = function(event) {
        $('console').insert('Window gained focus<br />');
      }

      window.onblur = function(event) {
        $('console').insert('Window lost focus<br />');
      }
    </script>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

有没有人有一种技术可以确定浏览器窗口或标签何时失去/获得适用于所有流行浏览器的焦点?

javascript browser cross-browser

8
推荐指数
1
解决办法
5080
查看次数

MySQL什么时候尝试更新列的索引?

我正在尝试确定MySQL更新索引的情况.说我有下表:

CREATE TABLE MyTable (
  ID INT NOT NULL AUTO_INCREMENT,
  MyIndexedColumn VARCHAR NOT NULL,
  MyNonIndexedColumn VARCHAR,
  PRIMARY KEY (ID),
  INDEX MyNewIndex(MyIndexedColumn)
)
Run Code Online (Sandbox Code Playgroud)

然后我运行以下SQL来插入一行:

INSERT INTO MyTable (MyIndexedColumn, MyNonIndexedColumn) 
VALUES ('MyTestValue', 'MyTestValue');
Run Code Online (Sandbox Code Playgroud)

据我所知,这个查询会在MySQL中为B-Tree索引添加某种哈希键,用于值'MyTestValue'.

现在,如果我运行以下语句,即使我没有更改列的值,是否会强制更新B-Tree索引?

UPDATE MyTable SET MyIndexedColumn = 'MyTestValue', 
MyNonIndexedColumn = 'A New Value' WHERE ID = 1;
Run Code Online (Sandbox Code Playgroud)

MySQL足够聪明,可以确定吗?或者只是将该列作为更新语句的一部分,我告诉MySQL可能已经发生了变化,它应该做更新索引的工作吗?

mysql database

5
推荐指数
3
解决办法
7949
查看次数