草庐IT

find_first_not_of

全部标签

ruby-on-rails - rails 3 : validate presence of at least one has many through association item

我有两个模型:Project和ProjectDiscipline:classProject:destroyhas_many:project_disciplines,through::project_disciplinizationsattr_accessible:project_discipline_idsattr_accessible:project_disciplines_attributesaccepts_nested_attributes_for:project_disciplines,:reject_if=>proc{|attributes|attributes['name'

ruby - 如何避免 RSpec 中的 "Useless use of == in void context"?

在RSpec中,如果我有警告并且有x.should==42another_line_of_code然后我得到一个关于的警告warning:uselessuseof==invoidcontext还有什么我可以做的吗关闭警告将其更改为bitbucket=(x.should==42) 最佳答案 使用:x.shouldeq(42)或者:x.shouldbe==42或者移动x.should==42使其成为itblock中的最后一行。对于那些思考但是为什么?的人我完全是Ruby的菜鸟,但这是我的理解:警告来自Ruby,因为像x.should==

RubyGems + Cygwin : POSIX path not found by ruby. exe

我是Windows上的Ruby程序员,试图从Wincmd切换到Cygwin,但无法执行Rubygems的批处理文件。我已经将任何bin目录填充到WindowsPATH环境中。变量,包括存储可执行文件的Rubybin。然而,gems是由ruby​​.exe本身调用的,这会导致以下POSIX路径问题:duddle@duddledan/cygdrive/c/Ruby/ruby-186-398/bin$gem-vC:\Ruby\ruby-186-398\bin\ruby.exe:Nosuchfileordirectory--/cygdrive/c/Ruby/ruby-186-398/bin/g

ruby - 如何修复 "Unknown ruby interpreter version (do not know how to handle): RUBY_VERSION."

今天我只想在我的Mac上设置一个jekyll博客,并且已经安装了ruby​​2.3.0,但是当make'$jekyllserve'时,它是错误的。并在终端中显示:错误信息:Unknownrubyinterpreterversion(donotknowhowtohandle):RUBY_VERSION. 最佳答案 看起来像bundleexecjekyllnew将使用以下行创建一个GemfilerubyRUBY_VERSION我相信您会希望将该文件编辑为例如ruby'2.1.1' 关于rub

ruby-on-rails - 摩卡 : How to add expectation of a method when there are multiple invocations with different parameters

我有一个RailsControllerAction要测试。在那个Action中,一个方法User.can?使用不同的参数多次调用。在其中一个测试用例中,我想确保User.can?('withdraw')被调用。但我不关心User.can的调用?与其他参数。defaction_to_be_tested...@user.can?('withdraw')...@user.can?('deposit')...end我在测试中尝试了以下:User.any_instance.expects(:can?).with('withdraw').at_least_once.returns(true)但是测

ruby-on-rails - rails : Opposite of Hash#to_param

如果我将哈希值转换为查询字符串,我该如何将其再次转换回来?{:filters=>{:colour=>['Red','Blue'],:size=>'Medium'}}.to_param=>"filters[colour][]=Red&filters[colour][]=Blue&filters[size]=Medium"Rails似乎在填充params散列时自动执行此操作,但是否可以直接调用此方法?谢谢。 最佳答案 您正在寻找Rack::Utils.parse_nested_query(query),它将把它转换回Hash。您可以使用

ruby - 工厂女郎 : Factory not registered: user (ArgumentError)

在使用FactoryGirl将所有鸭子按正确顺序排列时遇到很多麻烦。设置极简Rails应用程序(3.0.11)、factory_girl_rails(1.4.0)、factory_girl(2.3.2)&cucumber-rails(1.2.1)和ruby​​-1.8.7-p352。cucumber测试是:Feature:aScenario:testfactory-girlGiventhefollowinguserexists:|name|email||Brandon|brandon@example.com|结果是这样的:cucumberUsingthedefaultprofile..

ruby-on-rails - rails : Why images are not showing in my rails basic app

我的index.html.erb代码-Listingproducts'list_image')%>图像在app\assets\images下..但是前端没有显示静态图像。当我Firebug它时,我相信图像标签是正确形成的...让我知道我在这部分缺少什么。截图-图片也到位了-让我知道我做错了什么,我该如何解决。编辑github.com/swapnesh/depot请告诉我为什么它在我的案例中不起作用。尽管更改/images/product1.jpgTo/assets/product1.jpg使其正常工作。 最佳答案 如果您正在使用As

ruby 管道 : How do I tie the output of two subprocesses together?

在Ruby中是否有自动执行shell管道的方法?我正在尝试将以下shell代码转换为Ruby:a|b|c...>...但到目前为止我找到的唯一解决方案是自己进行缓冲区管理(经过简化,未经测试,希望它能理解我的意思):a=IO.popen('a')b=IO.popen('b','w+')Thread.new(a,b){|in,out|out.write(in.readpartial(4096))untilin.eof?out.close_write}#dealwithb.read...我想我正在寻找的是一种告诉popen使用现有流而不是创建新流的方法?或者,将a的输出连接到b的输入的IO

ruby - 总和(&:x) not working any more

我在我的Rails应用程序(4.1.2)中使用payments.sum(&:price)。自从我从Ruby1.9.3更新到2.1.2后,出现了以下错误:wrongnumberofarguments(1for2..3)这些变体有效:payments.map(&:price).sumpayments.to_a.sum(&:price)我必须重写我的代码还是我遗漏了什么?谢谢! 最佳答案 来自documentation:sum(*args)Calculatesthesumofvaluesonagivencolumn.Thevalueisr