草庐IT

get_list_of_tuples

全部标签

ruby - 如何解决 factory_girl wrong number of arguments 错误

#rspectestcode@room=FactoryGirl.build(:room)#factorydefinitionfactory:roomdolength{10}width{20}end#codeimplementationclassRoomattr_accessor:length,:widthdefinitialize(length,width)@length=length@width=widthendend在尝试构建@room时运行rspec会导致此错误ArgumentError:wrongnumberofarguments(0for2) 最佳

ruby - 迷你魔术 : Cut circle out of square image

我需要用MiniMagick将方形图像转换为圆形图像.我知道有一个way使用ImageMagick:convert-size300x300xc:transparent-fill"image.png"-draw"circle240,90290,90"-crop100x100+190+40+repagecircle1.png我试过翻译:img.combine_optionsdo|c|c.draw"circle240,90290,90"c.crop"100x100+190+40"c.repage.+end我得到了这个东西,一个以我的大Nose为背景的黑色圆圈:如果有人知道如何正确翻译这个..

ruby-on-rails - ruby rails : question about validates_presence_of

我在基于ActiveRecord的模型中有一个如下所示的关系:belongs_to:foo我的模型应该始终在其中定义foo才能有效。我的问题是,当使用validates_presenceof时,使用哪个是合适的:validates_presence_of:foo或validates_presence_of:foo_id当然,这里假设foo_id是适当的外键,如果您不更改关联键,则默认情况下它是。 最佳答案 第一个:validates_presence_of:foo(尽管我认为第二个也可以)。通常,Ruby验证助手处理模型名称而不是显

ruby - 我在 "gem list"中看到 gem 但有 "no such file to load"

我在Ubuntu10上sudoapt-getinstallruby1.9.1-full然后下载rubygem1.3.7的源码并安装sudorubysetup.rb然后,例如,安装sinatrasudogeminstallsinatra最后打开irb并输入require"rubygems"require"sinatra"得到错误LoadError:nosuchfiletoload--sinatrafrom(irb):2:in`require'from(irb):2from/usr/bin/irb:12:in`' 最佳答案 我正好遇到了

ruby-on-rails - rails : Where does new_*something*_path variable get set up?

我为“消息”创建了一个脚手架,并且new_message_path和edit_message_path(用于link_to's)都已设置,但现在我已经创建了app/views/messages/sent.html.erb,我想做类似的内容,但我不知道该怎么做。我明白了undefinedlocalvariableormethod`sent_message_path'for# 最佳答案 这些方法是在定义路由时自动创建的,对于RESTful路由,它们遵循可预测的约定。运行“rakeroutes”是查看生成的所有路由的有用方法。我建议您阅读

ruby - 使用参数重定向 POST/GET 请求的 Sinatra 应用程序

我正在迁移服务器,但不幸的是,旧服务器IP已硬编码在我的iPhone应用程序中。显然,我将提交一个更新,将API端点设置到我的新服务器,但与此同时,我需要在旧服务器上设置一个应用程序,将所有请求重定向到新服务器。我听说Sinatra非常适合这个。require'sinatra'get"/foo/bar"doredirect"http://new-server.com/foo/bar",303endpost"/foo/bar"doredirect"http://new-server.com/foo/bar",303end问题是它们不会随请求一起转发GET或POST参数。我在Sinatra

ruby /Rspec : Possible to compare the content of two objects?

我在ruby​​中创建了2个不同的对象,它们具有完全相同的属性和值。现在我想比较两个对象的内容是相同的,但进行以下比较:actual.should==expectedactual.shouldeq(expected)actual.should(beexpected)失败:Diff:@@-1,4+1,4@@-#在rspec/ruby中有什么方法可以轻松实现这一点吗?干杯! 最佳答案 执行此操作的惯用方法是覆盖#==运算符:classStationdef==(o)primary_key==o.primary_keyenddefhashp

ruby - Ruby 的 Object#const_get 是如何工作的?

我最近发现Ruby(2.2.1)有一些“有趣”的行为。moduleFooclassFooendclassBarendendFoo.const_get('Foo')#=>Foo::FooFoo.const_get('Bar')#=>Foo::BarFoo.const_get('Foo::Foo')#=>FooFoo.const_get('Foo::Bar')#=>NameError:uninitializedconstantFoo::Foo::BarFoo.const_get('Foo::Foo::Bar')#=>Foo::BarFoo.const_get('Foo::Foo::Foo:

ruby - 按值对 Hash of Hashes 进行排序(并返回哈希,而不是数组)

我有以下哈希:user={'user'=>{'title'=>{'weight'=>1,....}'body'=>{'weight'=>4,....}........}}是否可以让用户按其子哈希的权重键排序?我查看了Hash.sort,但看起来它返回的是数组而不是我原来的哈希排序。 最佳答案 在Ruby1.9中,Hashes被排序,但是Hash#sort仍然返回Array的Array秒。想象一下!它确实意味着您可以在此基础上构建自己的排序方法。classHashdefsorted_hash(&block)self.class[sor

适用于多行的 Ruby 'gets'

使用IRB,我想输入一个多行字符串,以便从中删除某些字符。“gets”只允许单行-多行是否有类似的功能。ASCII_project.rb(main):002:0*puts="What'sthetextyouwanttostrip?"=>"What'sthetextyouwanttostrip?"ASCII_project.rb(main):003:0>str=gets我现在想粘贴一段文本-因为新行它不起作用。这就是为什么我要收集多行这是代码#encoding:CP850puts="What'sthetextyouwanttostrip?"str=getsstr.gsub!(/\P{AS