草庐IT

Java内部类的使用和实例化

全部标签

ruby-on-rails - 如何使用 ActiveRecord 映射多个属性?

如果我在控制台中输入u=User.firstu.friends(&map:username)我得到了["Peter","Mary","Jane"]但我还想显示生日,那么我该怎么做呢?我试过了u.friends(&map:username,&map:birthday)但这行不通。 最佳答案 您可以使用备用block语法:u.friends.map{|f|[f.username,f.birthday]}这将给出一个数组。u.friends.map{|f|"#{f.username}-#{f.birthday}"}会给你一个字符串数组。您

ruby - 嵌套类如何访问 Ruby 外部类中的方法?

defclassAdefaraise"hi"#can'tbereachedendclassBdefba()#doesn'tfindmethoda.endendend我想从b调用a并引发异常。我该怎么办? 最佳答案 Ruby没有嵌套类。继承行为的唯一方法是通过继承。如果你想让你的代码工作,你需要使用支持嵌套类的语言。虽然这是一个令人难以置信的简洁而强大的功能,但不幸的是我只知道两种具有嵌套类的语言:BETA,引入嵌套类的语言(及其继任者gbeta)Newspeak我不知道其他的。Java有一个称为嵌套类的构造,但它们有一些不幸的设计限

ruby - 为什么要在框架 Web 服务器前面使用 http 服务器?

sinatra(ruby)、play(scala)、lift(scala)等Web应用程序框架会生成一个监听特定端口的Web服务器。我知道有一些原因,例如安全性、集群以及在某些情况下的性能,可能会导致我在我的Web应用程序之前使用ApacheWeb服务器。根据您的经验,您有什么原因吗? 最佳答案 任何网络应用程序的一部分都具有完全标准化和商品化的功能。nginx或apache等成熟的Web服务器可以执行以下操作。它们可以以更正确、更高效、更稳定、更安全、系统管理员更熟悉并且比您可以在应用程序服务器中重写的任何方式更容易配置的方式来执

ruby - 是否可以使用范围作为 Ruby 中散列的键?

我正在尝试创建一个脚本来遍历索引,查看每个页码,并告诉我该条目在书中的哪一章。这是我正在做的事情的近似值:@chapters={1=>"introduction.xhtml",2..5=>"chapter1.xhtml",6..10=>"chapter2.xhtml",11..18=>"chapter3.xhtml",19..30=>"chapter4.xhtml"}deffind_chapter(number)@chapters.eachdo|page_range,chapter_name|ifnumber===page_rangeputs""+number.to_s+"endend

ruby-on-rails - 在 Rails 环境下使用 Rspec 测试 Rake 任务

我正在尝试测试一个rake任务,它在其中使用了一个事件记录。require'spec_helper'require'rake'loadFile.join(Rails.root,'lib','tasks','survey.rake')describe"surveyraketasks"dodescribe"survey:send_report"doit"shouldsendareport"doRake::Task['survey:send_report'].invokeendendend当我运行此规范rspecspec/lib/survey_spec.rb时,出现此错误“RuntimeEr

ruby-on-rails - 你如何使用 rails 重定向到外部网站?

我希望将鼠标悬停在上面时您看到的链接看起来像这样:http://www.website.com/redirct_to=linkID2(也许不完全是那样,但试着理解这个想法)我的博客中有一个表单区域,我可以在其中输入网站url,但我想在显示帖子时将其重定向到外部网站。 最佳答案 redirect_to"https://website.com"只要包含协议(protocol)就应该这样做。为了增加灵active,您可以使用URI解析它以确保所有字段都是正确的。你可能想要URI.encode/URI.decode

ruby - Ruby 中的反射。通过给定的类名实例化一个对象

我是从PHP开始接触ruby​​的。我怎么能用ruby​​做下一件事?$className='ArrayObject';$arrayObject=new$className(); 最佳答案 你可以这样做:arrayObject=Object::const_get('Array').new 关于ruby-Ruby中的反射。通过给定的类名实例化一个对象,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/qu

ruby-on-rails - 如何找到运行 Rails 实例的本地端口?

所以我希望我的Rails应用程序实例能够在我正在玩的“我在玩”这类东西上自行注册,并且我希望它能够提及它正在运行的本地端口。我似乎找不到如何做到这一点-事实上,只是找出它的IP是棘手的,需要一点技巧。但没问题,我有IP-但我如何才能找到我的mongrel/thin/webrick服务器正在运行的端口?非常明确地说,如果我使用script/server-p3001启动Rails应用程序,我该怎么做才能将3001拉入应用程序。 最佳答案 您可以调用Rails::Server.new.options[:Port]来获取运行Rails服务器

ruby - 在 Ruby 中重置单例实例

如何在Ruby中重置单例对象?我知道人们永远不想在真正的代码中这样做,但是单元测试呢?这是我在RSpec测试中尝试做的-describeMySingleton,"#not_initialised"doit"raisesanexception"doexpect{MySingleton.get_something}.toraise_error(RuntimeError)endend它失败了,因为我之前的一个测试初始化​​了单例对象。我尝试听从IanWhite来自this的建议链接本质上是猴子修补Singleton以提供reset_instance方法,但我得到一个未定义的方法“reset_

ruby - 使用 step 遍历数组

我想查看数组中的每个第n个元素。在C++中,我会这样做:for(intx=0;x我想在Ruby中做同样的事情,但找不到“步骤”的方法。while循环可以完成这项工作,但我发现在已知大小的情况下使用它令人反感,并希望有更好的(更多Ruby)方法来完成这项工作。 最佳答案 范围有一个step方法,您可以使用它来跳过索引:(0..array.length-1).step(2).eachdo|index|value_you_care_about=array[index]end或者,如果您习惯于将...与范围一起使用,则以下内容更简洁一些:(