Tag: ruby

使用LAN中的移动设备连接到本地构build的Jekyll服务器

在一台机器上使用jekyll服务器之后,build立一个WEBrick服务器,在这个特定的PC上可以从localhost:4000访问该站点。 但是,我想知道如何从局域网中的其他机器访问此Web服务器,尤其是移动设备? 我试图在将代码推送到Github之前在移动设备上testingjekyll站点。

如何将多个参数作为数组传递给ruby方法?

我有一个像这样的帮助文件的方法 def table_for(collection, *args) options = args.extract_options! … end 我希望能够像这样调用这个方法 args = [:name, :description, :start_date, :end_date] table_for(@things, args) 这样我就可以dynamic地传递基于表单提交的参数。 我不能重写这个方法,因为我在太多的地方使用它,我还能怎么做呢?

不能与sudo一起使用RVM安装的Ruby

我已经成功地configurationRVM使用Ruby 1.9.2,一切都很好。 但是,当我试图使用sudo运行Ruby时,它说它找不到RVM或Ruby: $ ruby -v ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-linux] $ sudo ruby -v [sudo] password for administrator: sudo: ruby: command not found 这是正确的行为还是我的RVMconfiguration错误? 也许我应该使用系统安装 ?

跳过Enumerable#collect中的迭代

(1..4).collect do |x| next if x == 3 x + 1 end # => [2, 3, nil, 5] # desired => [2, 3, 5] 如果下next条件满足, collect放在数组中的nil ,而我想要做的是没有元素在返回的数组,如果条件满足。 这可能没有调用delete_if { |x| x == nil } delete_if { |x| x == nil }在返回的数组? (使用Ruby 1.8.7;我的代码摘要很抽象)

在Rails中如何require,require_dependency和常量重载?

require和require_dependency不同? 如何require_dependency自动重新加载类的开发,但require不能? 我深入Rails的ActiveSupport::Dependencies和dispatcher.rb代码。 我在require_dependency的代码中看到的是它基本上将常量添加到一个autoloaded_constants数组中。 但是在每个请求之后, clear_application在调度clear_application内的clear_application被清除。 有人可以给出一个明确的解释或指向我的一些资源,这将有助于?

哈希散列数组

例如,我有一些单一的哈希 a = [{a: :b}, {c: :d}] 什么是最好的办法将其转换成此? {a: :b, c: :d}

本地覆盖Vagrantconfiguration设置(per-dev)

我希望这个问题得到普遍的回答,但为了说明这个问题,这里有一个用例: 我正在使用Vagrant进行简单的LMAP项目。 我使用独立的Puppet进行configuration。 现在,可能会有一些开发人员坐在代理之后,他们需要对虚拟机进行一些额外的configuration。 我在Puppet方面有一些工作:我可以将代理IP(如果有的话)作为一个事实传递给Vagrantfile木偶,如果设置了,Puppet会作出相应的反应。 我唯一的问题是:开发人员如何在开发环境中指定/覆盖此设置,而无需更改Vagrantfile (版本控制下,并且必须保持dev-environment-neutral)? 如果人们可以重写一个叫做Vagrantfile.local的文件中的一些Vagrant设置,那么我会通过.gitignore排除。 由于Vagrantfile只是Ruby,我尝试了以下内容: # Also load per-dev custom vagrant config custom_vagrantfile = 'Vagrantfile.local' load custom_vagrantfile if File.exist?(custom_vagrantfile) 文件包含基本上工作,但它看起来像在包含的文件,我不在同一个stream浪上下文了… Vagrant::Config.run do |config| config.vm.provision :puppet do |puppet| puppet.facter = { "proxy" => "proxy.host:80" } end end …也会“重置”我在主Vagrantfile所做的所有其他木偶configuration值,这让我觉得我正在朝着错误的方向前进。 我应该注意到,我是Ruby的总noob;) 任何人都可以给我一个提示,甚至一个工作的解决scheme,如何在每个开发定制可以在这里做一般?

Ruby XML到JSON转换器?

在Ruby中是否有一个将XML转换为JSON的库?

Ruby on rails – 静态方法

我想要一个方法每5分钟执行一次,我实现了每当ruby(克朗)。 但它不起作用。 我认为我的方法是不可访问的。 我想要执行的方法位于一个类中。 我想我必须使这个方法是静态的,所以我可以通过MyClass.MyMethod访问它。 但是我找不到正确的语法,或者我正在寻找错误的地方。 Schedule.rb every 5.minutes do runner "Ping.checkPings" end Ping.rb def checkPings gate = Net::Ping::External.new("10.10.1.1") @monitor_ping = Ping.new() if gate.ping? MonitorPing.WAN = true else MonitorPing.WAN = false end @monitor_ping.save end

Capistrano SSH :: AuthenticationFailed,不提示input密码

一段时间以来,我一直在成功地使用capistrano,突然在每个项目中我都失去了部署的能力。 环境: os X(小牛) ruby1.9.3p194 rvm(本地,不在服务器上) 导轨3.2及以上 RubyGems 1.8.25 我没有使用rsa_keys或任何我想capistrano提示input用户名和密码。 突然它决定不要求密码,而是要求用户。 然后它回滚并给我以下错误。 [deploy:update_code] exception while rolling back: Capistrano::ConnectionError, connection failed for: sub.example.com (Net::SSH::AuthenticationFailed: Authentication failed for user user@sub.example.com) connection failed for: sub.example.com (Net::SSH::AuthenticationFailed: Authentication failed for user user@sub.example.com) 这发生在我的个人笔记本电脑和我的iMac工作。 它发生在部署到两个不同的服务器(两个Linux) 我在这里完全不知所措 有任何想法吗?