草庐IT

ruby - Rspec 模拟错误 : wrong number of arguments

我正在尝试使用Rspec对StripeAPI进行stub,但我遇到了一个问题。这是我的代码的样子:Stripe::Customer.should_receive(:create).with(any_args).and_raise(Stripe::CardError)这是我遇到的错误:Failure/Error:Stripe::Customer.should_receive(:create).with(any_args).and_raise(Stripe::CardError)ArgumentError:wrongnumberofarguments(0for3..6)

Ruby - 解析文本文件

我是Ruby的新手,一直在尝试一些非常基本的文本解析。然而,我现在正在尝试解析更多的复杂文件,然后将其推送到一个csv文件中(我以前没有做过),但我陷入了困境。文件如下所示,TitlesometextsomedifferenttextPublisher:namePublishedDate:dateNumber1:numberNumber2:numberNumber3:numberCategory:category----------------------TitlesometextsomedifferenttextPublisher:namePublishedDate:dateNumb

ruby-on-rails - rails : How to print a decimal as a percent?

有没有办法将小数打印为百分比,所以只有句点后的两位数?我的小数点总是在1和0之间,所以我想从第三个字符开始调用number.round(2)是可行的,但我找不到它的语法任何地方。为了澄清,我希望将数字存储为完整的小数,但打印为百分比。 最佳答案 您可能想要使用number_to_percentage方法。来自documentation,这里有一些如何使用它的例子:number_to_percentage(100)#=>100.000%number_to_percentage("98")#=>98.000%number_to_perc

ruby-on-rails - Rails 中友好的字节格式

我需要将字节的整数表示格式化为友好的形式,我希望Ruby或Rails中有一个实用函数可以为我进行格式化(当然是为了让我的懒惰永久化。)我正在寻找看起来像这样的东西:format_bytes(1024)->"1KB"format_bytes(1048576)->"1MB"看起来ActiveSupport中有一些东西可以反过来做,但我还没有找到朝这个方向做的方法。如果不存在,有没有人有特别优雅的解决方案? 最佳答案 Numbertohumansize就是您要找的。require'action_view'includeActionView

ruby-on-rails - 缩短长号码以包括 K/M/B/T

我已经查看了Railsnumber_to_human但这并不是我想要的。我想缩短长数字而不包括完整的单位名称:420->4205,680->5,68012,680->12.6K6,802,251->6.80M894,100,158->894M如您所见,没有具体的精度,但更多的是关于总数的长度有人对此有很好的辅助方法吗? 最佳答案 放入你的config/locales/en.yml:en:number:human:decimal_units:format:"%n%u"units:unit:""thousand:Kmillion:Mbi

ruby - 从 Rails 中的散列中删除多个键值对

number={:a=>1,:b=>2,:c=>3,:d=>4}根据某些条件的评估,我想删除a,b,c的键值对 最佳答案 number.delete"A"number.delete"B"number.delete"C"或者,性能较差但更简洁:number.reject!{|k,v|%w"ABC".include?k} 关于ruby-从Rails中的散列中删除多个键值对,我们在StackOverflow上找到一个类似的问题: https://stackoverf

ruby - 在 Ruby 中卡住 Symbols 和 Numbers 的用途或效果是什么?

在Ruby1.9中你可以有Fixnum,Float,和Symbol未卡住或卡住的值:irb(main):001:0>a=[17,42.0,:foo];a.map(&:frozen?)=>[false,false,false]irb(main):002:0>a.each(&:freeze);a.map(&:frozen?)=>[true,true,true]我了解卡住字符串、数组或其他可变数据类型的实用性。然而,据我所知,Fixnum,Symbol,和Float实例从一开始就是不可变的。是否有任何理由卡住它们(或者Ruby不会报告它们的任何原因frozen?请注意,在Ruby2.0中Fi

ruby-on-rails - rails : remove decimal from number_to_currency

我有一个float价格:number_to_currency(m.price,:locale=>'en_us')我得到:$39.00如何删除.00,我想得到:$39 最佳答案 您可以按照记录将精度设置为0here在RailsAPI文档中。number_to_currency(m.price,locale::en,precision:0)请注意,您的价格将进行四舍五入,从38.50美元到39.49美元的任何价格都将显示为39美元。编辑:将区域设置:en_us替换为:en,这可能会在更多应用中启用。

ruby-on-rails - 使用 Ruby 搜索 JSON 响应

我正在使用Ruby脚本与应用程序API交互,返回的结果采用JSON格式。例如:{"incidents":[{"number":1,"status":"open","key":"abc123"}{"number":2,"status":"open","key":"xyz098"}{"number":3,"status":"closed","key":"lmn456"}]}我希望在每个block中搜索特定的“键”值(本例中为yzx098)并返回关联的“数字”值。现在,我对Ruby还很陌生,我不确定是否已经有一个函数可以帮助实现这一点。然而,搜索谷歌和Ruby资源书籍几天没有产生任何有用的东

ruby - Ruby 中漂亮的文件大小?

我正在尝试创建一种方法,将表示字节的整数转换为具有“修饰”格式的字符串。这是我半途而废的尝试:classIntegerdefto_filesize{'B'=>1024,'KB'=>1024*1024,'MB'=>1024*1024*1024,'GB'=>1024*1024*1024*1024,'TB'=>1024*1024*1024*1024*1024}.each_pair{|e,s|return"#{s/self}#{e}"ifself我做错了什么? 最佳答案 如果将它与Rails一起使用-标准Rails数字助手怎么样?http: