草庐IT

column_to_go_by

全部标签

ruby-on-rails - 使用 Rails 中的命名空间类防止 "warning: toplevel constant B referenced by A::B"

在自定义目录(例如:app/presenters/)中存储文件时,如何确保加载命名空间类?例如,如果您有:app/models/mega_menu.rbapp/presenters/catalog_presenter.rbapp/presenters/mega_menu/catalog_presenter.rbRails无法加载MegaMenu::CatalogPresenter:CatalogPresenter.new=>#MegaMenu::CatalogPresenter.new(irb):3:warning:toplevelconstantCatalogPresenterref

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 : 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 : 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-on-rails - 在 Rails 3 中使用 update_columns?

在Rails3中有更短的方法吗?user.update_column(:attribute1,value1)user.update_column(:attribute2,value2)user.update_column(:attribute3,value3)user.update_column(:attribute4,value4)我试过update_columns但它只在Rails4中可用。感谢您的帮助。 最佳答案 这是Rails3.x的解决方法:User.where(id:user.id).update_all(attribu

ruby-on-rails - rails : Add Custom action to resource

我有一个故事Controller,我已将其映射为资源。我向stories_controller添加了2个新方法,'top'和'latest'。但是当我尝试访问example.com/stories/top时,出现“没有ID=top的故事”错误。如何更改路由以识别这些URL? 最佳答案 在Rails2.x中尝试:map.resources:stories,:collection=>{:top=>:get,:latest=>:get}在Rails3.x中:resources:storiesdocollectiondoget'top'ge

ruby-on-rails - rails : Ensure only one boolean field is set to true at a time

我有一个Logo模型,它的字段名称为:字符串,默认为bool值。我希望true值是唯一的,以便一次只能将数据库中的一项设置为true。如何在我的Controller中设置更新和新操作以将Logo的所有其余值设置为false?假设我有以下设置在我的数据库中模特标志名称:字符串|默认值:bool值|项目1|是的|项目2|假|第3项|假|如果我将Item2默认值更改为true,我希望它遍历所有Logo并将其余Logo设置为false,因此一次只有一个为true,所以它看起来像这样。名称:字符串|默认值:bool值|项目1|假|项目2|是的|第3项|假|提前感谢您的帮助。

ruby-on-rails - Ruby 哈希数组。 group_by 一行修改

我有一个散列数组,类似于[{:type=>"Meat",:name=>"one"},{:type=>"Meat",:name=>"two"},{:type=>"Fruit",:name=>"four"}]我想把它转换成这个{"Meat"=>["one","two"],"Fruit"=>["Four"]}我尝试了group_by但后来我得到了这个{"Meat"=>[{:type=>"Meat",:name=>"one"},{:type=>"Meat",:name=>"two"}],"Fruit"=>[{:type=>"Fruit",:name=>"four"}]}然后我不能修改它只留下名

ruby-on-rails - Ruby 有 natural_sort_by 方法吗?

我有一个包含一堆属性的文件列表。其中一个属性是文件名,这是我想要对列表进行排序的方式。然而,列表是这样的:文件名1、文件名2、文件名10、文件名20。rubysort_by方法产生这个:files=files.sort_by{|file|file.name}=>[filename1,filename10,filename2,filename20]我想要一个更易于阅读的列表,例如文件名1、文件名2、文件名10、文件名20我找到了natural_sortgem但它似乎只能像排序方法一样工作。我需要一些可以指定数组排序依据的东西。有什么帮助吗? 最佳答案