草庐IT

java里面获取map的key和value的方法

全部标签

ruby - 何时在模块的方法中使用 self

我的模块定义如下:moduleRG::Statsdefself.sum(a,args={})a.inject(0){|accum,i|accum+i}endend要使用这个方法,我只需要包含这个定义的文件,这样我就可以:RG::Stats.sum(array)还有RG::Stats.method(:sum)但是,如果我需要使用RG::Stats.instance_methods了解方法列表,我会得到一个空数组。这是因为我使用了self。如果我省略self,则RG::Stats.instance_methods会给出方法列表,但我无法再访问它们。问题是:如何在模块的方法定义中使用self

ruby - 在 Ruby 中获取 UTC 偏移量

我正在尝试获取日期时间的UTC偏移量。日期时间保存为:Fri,31May201315:19:08EDT-04:00我想要得到的是"-04:00"。当我执行object.utc_offset时,我得到-14400。我应该使用什么功能? 最佳答案 您正在寻找strftime:Time.now.strftime("%:z")这将为您提供诸如“-04:00”之类的偏移量。 关于ruby-在Ruby中获取UTC偏移量,我们在StackOverflow上找到一个类似的问题:

ruby - 多次别名一个方法

我想为一个原始方法设置两个别名,但我看不到alias_method一次创建多个别名的能力,而是一个接一个。那么有没有可能改变这个:alias_method:aliased_first_method,:first_methodalias_method:aliased_first_method?,:first_method像这样:alias_method[:aliased_first_method,:aliased_first_method?],:first_method我对创建自定义方法不感兴趣。 最佳答案 我认为没有比使用每个更好的

ruby-on-rails - ENV 变量中的 Capistrano 和 API key ?

我正在使用Capistrano部署我的Rails应用程序。我想在服务器上保存一些APIkey作为环境变量。我使用Capistrano部署的Rails应用程序应该可以访问这些APIkey。作为守护进程运行的单独的ruby​​文件也应该可以访问这些APIkey。在环境变量中设置APIkey似乎是理想的解决方案,但是,我无法在我的Rails应用程序中使用ENV["SOME_KEY"]访问它们。根据thispost,因为capistrano以非交互和非登录方式运行,~/.bashrc和~/.bash_profile未加载。流程图建议我应该使用$BASH_ENV。我可以只在$BASH_ENV中添

ruby - 在 ruby​​ 中获取给定键的哈希键值对

我有一个散列h1和keyk1。我需要返回哈希中给定键的完整键值对。喜欢关键的“鱼”我需要打印'fish'=>'aquaticanimal'@h1,打印所有键值对。我需要为给定键打印键值对的方法我是ruby​​的新手,很抱歉这个菜鸟问题。 最佳答案 有一个方法,Hash#assoc可以做类似的事情。但它返回数组中的键和值,您可以轻松地将其更改为哈希。另一种方法是使用Hash#select,它会根据给定的block返回哈希。h1={"fish"=>"aquaticanimal","tiger"=>"bigcat"}h1.assoc"fi

ruby - 是否有 Ruby string#blank?方法?

String#blank?非常有用,但存在于Rails中,而不存在于Ruby中。Ruby中是否有类似的东西来替换:str.nil?||str.empty? 最佳答案 据我所知,普通Ruby中没有这样的东西。您可以像这样创建自己的:classNilClassdefblank?trueendendclassStringdefblank?self.strip.empty?endend这将适用于nil.blank?和a_string.blank?您可以将其扩展(就像rails一样)用于true/false和一般对象:classFalseCl

ruby-on-rails - 事件管理员 :select drop-down defaults to current value in development but defaults to blank in production

我有以下ActiveAdmin表单:formdo|f|f.inputs"TimesheetDetails"dof.input:jobs_assigned_worker,:label=>"Worker",as::select,collection:Worker.allf.input:worked_time_hours,:label=>"WorkedTime(Hours)"f.input:worked_time_mins,:label=>"WorkedTime(Minutes)"f.input:driving_time_hours,:label=>"DrivingTime(Hours)"f

ruby-on-rails - 从整数值获取枚举字符串名称的最佳方法是什么

我需要通过整数值获取枚举状态的字符串名称,接下来我会这样做Order.states.find{|x|x[1]==data['stateId']}有人知道更好的方法吗?enumstate:{created:0,cancelled:100,complete:10,} 最佳答案 Order.states.key(100)=>'cancelled' 关于ruby-on-rails-从整数值获取枚举字符串名称的最佳方法是什么,我们在StackOverflow上找到一个类似的问题:

ruby-on-rails - 你如何从 Rails 中的 View 调用方法?

假设我这样做了:脚本/生成Controller主页并且在家庭Controller中做了一个方法..defsayputs"Youarehere"end如何在index.html.erb中调用该方法?当学习ruby​​时,它只是说在终端中运行whatever.rb运行您在该文件中编写的所有代码。只是好奇如何这将适用于Rails。 最佳答案 我假设您正在运行Rails服务器?有两种可能性,首先你可以在Controller中使用一个辅助方法:helper_method:say在你的Controller中。或者,更好的解决方案是将您的say方

ruby-on-rails - 获取 URL 字符串参数?

我的数据库中有这个URL,在“位置”字段中:http://www.youtube.com/watch?v=xxxxxxxxxxxxxxxxxxx我可以通过@object.location获取,但是如何获取v的值呢?我的意思是,从URL字符串中获取"xxxxxxxxxxxx"? 最佳答案 require'uri'require'cgi'#useURI.parsetoparsetheURLintoitsconstituentparts-host,port,querystring..uri=URI.parse(@object.locati