标签: ruby

Ruby中的安全整数解析

比方说我有一个字符串,'123'我想把它转换成123.

我知道你可以做到some_string.to_i,但是转换'lolipops'0,这不是我想到的效果.当我尝试将一些无效的东西转换成一种美好而痛苦的东西时,我希望它能在我的脸上爆炸Exception.否则,我无法区分有效0和根本不是数字的东西.

编辑:我一直在寻找标准的做法,没有正则表达式的诡计.

ruby string string-parsing

155
推荐指数
6
解决办法
8万
查看次数

Rails模型,视图,控制器和助手:什么在哪里?

在Ruby on Rails开发(或一般的MVC)中,我应该遵循什么快速规则来放置逻辑.

请回答是肯定的 - 把Do放在这里,而不是把它放在那里.

ruby model-view-controller ruby-on-rails

155
推荐指数
6
解决办法
4万
查看次数

如何检查Ruby中是否存在给定目录

我正在尝试编写一个脚本,根据指定的目录是否存在自动检出或更新Subversion URL.

出于某种原因,我的代码不起作用,即使它是假的,总是返回true:

def directory_exists?(directory)
  return false if Dir[directory] == nil
  true
end
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

ruby

155
推荐指数
5
解决办法
11万
查看次数

如何全局配置RSpec以保持'--color'和'--format specdoc'选项打开

如何在Ubuntu中为RSpec设置全局配置.

具体来说, - color和--format specdoc在我的所有项目中保持打开状态(即每次我在任何地方运行rspec).

ruby rspec colors configuration-files

155
推荐指数
4
解决办法
6万
查看次数

Nokogiri安装失败-libxml2丢失

我总是按照" 安装Nokogiri "教程中的文档来解决Nokogiri安装问题.

但这一次,即使安装了所有依赖项,Nokogiri也没有安装.我收到以下错误:

libxml2 is missing.  please visit <http://nokogiri.org/tutorials/installing_nokogiri.html>
Run Code Online (Sandbox Code Playgroud)

我尝试通过指定libxml2和libxslt目录来安装它:

sudo gem install nokogiri -- --with-xml2-include=/usr/include/libxml2 --with-xml2-lib=/usr/lib --with-xslt-dir=/usr/
Run Code Online (Sandbox Code Playgroud)

但它返回了同样的错误.

我遵循了所有其他相关的Stack Overflow文章,没有人帮忙.有没有人有办法解决吗?

ruby rubygems ruby-on-rails

155
推荐指数
9
解决办法
8万
查看次数

Ruby:如何在数组中查找并返回重复值?

arr是字符串数组,例如:["hello", "world", "stack", "overflow", "hello", "again"].

什么是简单而优雅的方法来检查是否arr有重复,如果是,则返回其中一个(无论哪个).

例子:

["A", "B", "C", "B", "A"]    # => "A" or "B"
["A", "B", "C"]              # => nil
Run Code Online (Sandbox Code Playgroud)

ruby arrays

155
推荐指数
12
解决办法
10万
查看次数

为什么Ruby 1.9.2删除"." 来自LOAD_PATH,有什么替代方案?

Ruby 1.9.2的最新变更集不再使当前目录.成为您的目录LOAD_PATH.我有一些非常重要的Rakefiles假设它.是其中的一部分LOAD_PATH,所以这打破了它们(他们报告"没有这样的文件加载"所有基于项目路径的require语句).这样做有什么特别的理由吗?

至于一个修复,添加$: << "."到处都有效,但看起来非常h​​acky,我不想这样做.使Rakefiles 1.9.2+兼容的首选方法是什么?

ruby rake require load-path

154
推荐指数
5
解决办法
4万
查看次数

如何在轨道上的红宝石中没有换行符时使用"puts"到控制台?

我有一个循环的方法 - 我希望它输出一个"." 每个循环所以我可以在控制台中看到它.但是,当我使用时,它会在每个结尾处放置一个换行符puts ".".

如果有一种方式,它只是一个连续的线?

ruby io console

153
推荐指数
1
解决办法
6万
查看次数

@@ variable在Ruby中意味着什么?

什么是Ruby变量,在符号(@@)前面加上double ?我对一个带有at符号的变量的理解是它是一个实例变量,在PHP中是这样的:

PHP版本

class Person {

    public $name;

    public function setName($name) {
        $this->name = $name;
    }

    public function getName() {
        return $this->name;
    }
}
Run Code Online (Sandbox Code Playgroud)

Ruby相当于

class Person

    def set_name(name)
        @name = name
    end

    def get_name()
        @name
    end
end
Run Code Online (Sandbox Code Playgroud)

双重标志@@是什么意思,它与单个标志有什么不同?

ruby syntax instance-variables class-variables

153
推荐指数
3
解决办法
9万
查看次数

无法安装RMagick 2.13.1.找不到MagickWand.h.

当我尝试安装rmagick时,我收到以下错误消息:

Can't install RMagick 2.13.1. Can't find MagickWand.h.
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.
Run Code Online (Sandbox Code Playgroud)

我使用的是Mac OSX 10.6.8,ruby 1.9.2p290,rvm 1.10.2.

任何人都可以帮我解决这个问题.

ruby install rmagick

153
推荐指数
15
解决办法
9万
查看次数