草庐IT

ruby - "it"关键字在 RSpec 中有什么作用?

我正在学习rails3tutorial,但在进行如下测试时,我不明白“it”关键字的含义:require'spec_helper'describeUsersControllerdorender_viewsdescribe"GET'new'"doit"shouldbesuccessful"doget'new'response.shouldbe_successendit"shouldhavetherighttitle"doget'new'response.shouldhave_selector("title",:content=>"Signup")endendend代码片段来自:http:

ruby - 尝试从 FTP 下载文件导致 "500 Illegal PORT command"错误

如果我在本地执行,一切正常:require'net/ftp'ftp=Net::FTP.new("myftpserver.com","username","password")ftp.getbinaryfile("/myfile.zip","localfile.zip")ftp.close如果我尝试在我使用的Linux服务器上执行它,结果是:/usr/local/lib/ruby/1.9.1/net/ftp.rb:273:in`getresp':500IllegalPORTcommand.(Net::FTPPermError)from/usr/local/lib/ruby/1.9.1/n

ruby - 我在 Mac OS X 上收到 "RVM is not a function"错误,并且没有发布的解决方案有效

我在MacOSx10.8.2(“MountainLion”)上,我成功安装了RVM1.17.8及其依赖项。我可以使用它来使用rvminstall1.9.2安装Ruby版本,但我无法执行rvmuse没有收到此错误:RVMisnotafunction,selectingrubieswith'rvmuse...'willnotwork.Youneedtochangeyourterminalemulatorpreferencestoallowloginshell.Sometimesitisrequiredtouse`/bin/bash--login`asthecommand.Pleasevis

ruby-on-rails - 如何修复 Rake 任务中的 "uninitialized constant"

我在做的时候遇到了问题:namespace:xaarondotask:get_rolesdoroles=Xaaron::Role.allputsrolesendtask:get_role,[:name]do|t,args|role=Xaaron::Role.find(args[:name].parameterize)putsroleendend第一个任务可以正常工作。我什至可以添加binding.pry并运行Xaaron::Role并获取有关Roles的信息。但是第二个任务失败了:NameError:uninitializedconstantXaaron::Role我在我的主应用程序中

ruby-on-rails - 如何在 Rails 中使用 "_blank"或 "_new"

在HTML中,如果我想在新窗口中打开链接,我会采用target="_blank",如下所示:如何将"_blank"添加到rails?这是我到目前为止的链接代码(但它当前在同一选项卡/窗口中打开): 最佳答案 我觉得是这样的参见http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to 关于ruby-on-rails-如何在Rails中使用"_blank"或"_new",我们在S

ruby-on-rails - "use this if it isn' t 空白的 Ruby 速记,否则使用那个“

我有以下代码:url=file.s3_url.blank??file.url:file.s3_url有没有更短的写法?谢谢! 最佳答案 在ActiveSupport中有一个抽象,Object#presence:url=file.s3_url.presence||file.url 关于ruby-on-rails-"usethisifitisn't空白的Ruby速记,否则使用那个“,我们在StackOverflow上找到一个类似的问题: https://stack

ruby - 有效地处理数字数组的 "scale"或 "resize"的算法(音频重采样)

做音频处理(虽然它也可以是图像处理)我有一个一维数字数组。(它们恰好是代表音频样本的16位有符号整数,这个问题同样适用于float或不同大小的整数。)为了匹配不同频率的音频(例如,将44.1kHz样本与22kHz样本混合),我需要拉伸(stretch)或压缩值数组以满足特定长度。将数组减半很简单:每隔一个样本丢弃一次。[231,8143,16341,2000,-9352,...]=>[231,16341,-9352,...]将数组宽度加倍稍微不那么简单:将每个条目加倍(或可选地在相邻的“真实”样本之间执行一些插值)。[231,8143,16341,2000,-9352,...]=>[2

ruby - "(...) interpreted as grouped expression"是什么意思?

我在Atom中使用Rubylinter,对于某些行,它会发出以下警告:(...)interpretedasgroupedexpression获取此警告的行示例如下:elsifnot(params[:vacancy].nil?orparams[:vacancy]['company_id'].nil?orparams[:vacancy]['company_id']=="0")应该如何改进该行以使警告消失? 最佳答案 警告是(...)interpretedasgroupedexpression它的意思就是它所说的:在Ruby中,圆括号可以

ruby - 在 Ruby 中,为什么等于 nil ("Date.new == nil") 返回 nil?

今天写一些rspec时,我遇到了一些意外的行为,将日期(和时间)实例与nil进行比较。这是一个使用原始ruby​​的示例(没有Rails或其他库):user@MacBook-Work~$ruby-vruby1.8.7(2008-08-11patchlevel72)[universal-darwin10.0]user@MacBook-Work~$irb>>1==nil=>false>>"string"==nil=>false>>:sym==nil=>false>>false==nil=>false>>[]==nil=>false>>{}==nil=>false>>Proc.new{}==

ruby-on-rails - Ruby 中的 "equals greater than"运算符 => 是什么?

在RubyonRails教程中,我被要求输入:classPosttruevalidates:title,:presence=>true,:length=>{:minimum=>5}end我明白这是做什么的,但我想知道=>运算符是什么。在PHP领域,它链接关联数组中的键和值。这里是一样的吗?是Ruby运算符还是Rails运算符? 最佳答案 它主要是一个ruby​​运算符,用于在散列中设置键的值。因此:{:minimum=>5}是一个ruby​​散列,其符号为:minimum作为映射到值5的键。在本例中为具有一个条目的散列。同样适用于: