Questions tagged «ruby»

Ruby是由松本行弘(Matz)于1995年创建的一种多平台开放源代码,动态的,面向对象的解释性语言。[ruby]标记用于与Ruby语言有关的问题,包括其语法和库。Ruby on Rails问题应标记为[ruby-on-rails]。

10
如何在Ruby中以毫秒为单位计时操作?
我想弄清楚一个特定函数使用了多少毫秒。因此,我看上去高低不一,但找不到找到以毫秒为单位精度的Ruby时间的方法。 你怎么做到这一点?在大多数编程语言中,它就像 start = now.milliseconds myfunction() end = now.milliseconds time = end - start
78 ruby  timer 

5
没有别的Ruby三元运算符
就像一个简单的命令一样,是否有红宝石成语用于“ If do-this”和“ do-this”? 例如,我目前正在做 object.method ? a.action : nil 将else子句留空,但我觉得可能有一种更惯用的方式,而不必在最后指定nil。(或者,我觉得在这种情况下占用多行代码会很浪费。



5
红宝石在四个一组的数组元素上工作
当每个元素都需要处理时,我有一个ruby脚本数组: threads = [] elemets.each do |element| threads.push(Thread.new{process(element)}} end threads.each { |aThread| aThread.join } 但是由于资源限制,如果一次不处理四个元素,脚本将以最佳方式工作。 不,我知道我可以转储每个循环并使用一个变量来计数4个元素,然后等待,但是有没有更凉爽的红宝石方法呢?
78 ruby 

8
如何使用Nginx proxy_pass保留请求URL
我试图使用Thin App Server,但遇到一个问题。 当nginx代理使用proxy_pass http://my_app_upstream;应用程序向Thin(或Unicorn)发送请求时,会收到nginx(http://my_app_upstream)发送的修改后的URL 。 我想要的是传递原始URL和来自客户端的原始请求,而无需进行任何修改,因为该应用程序严重依赖它。 Nginx的文档说: 如果必须以未处理的形式传输URI,则应使用指令Proxy_pass而不带URI部分。 但由于相关示例实际上使用的是URI,因此我不知道如何准确配置它: location /some/path/ { proxy_pass http://127.0.0.1; } 那么,能否请您帮我弄清楚如何保留来自客户端的原始请求URL?
78 ruby  proxy  nginx  thin  unicorn 

7
Ruby按多个值排序?
我有一系列哈希: a=[{ 'foo'=>0,'bar'=>1 }, { 'foo'=>0,'bar'=>2 }, ... ] 我想先按每个哈希的“ foo”对数组进行排序,然后再按“ bar”对数组进行排序。Google告诉我这是怎么做的: a.sort_by {|h| [ h['foo'],h['bar'] ]} 但这给了我ArgumentError“比较数组与数组失败”。这是什么意思?
78 ruby 

4
将Ruby正则表达式拆分为多行
这可能不是您期望的问题!我不希望能在换行符上匹配的正则表达式;相反,我想编写一个长的正则表达式,出于可读性考虑,我想拆分成多行代码。 就像是: "bar" =~ /(foo| bar)/ # Doesn't work! # => nil. Would like => 0 能做到吗

4
如何告诉Rubocop忽略特定的目录或文件
我的项目是将开源类从我们不想保留的第三方gem扩展到与我们自己的代码相同的编码标准。重构gem代码不是一个可行的选择。我们只希望Rubocop忽略复制的代码。 如何指示Rubocop完全忽略文件或目录?
78 ruby  rubocop 

8
库未加载:/usr/local/opt/readline/lib/libreadline.6.dylib(LoadError)
我尝试运行我的rails c但由于某种原因,出现此错误: https://gist.github.com/anonymous/166713e8cde860fb188a8dffb98a1563 ᐅ rails c Running via Spring preloader in process 6609 /Users/zulhilmi/.rvm/gems/ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `require': dlopen(/Users/zulhilmi/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle, 9): Library not loaded: /usr/local/opt/readline/lib/libreadline.6.dylib (LoadError) Referenced from: /Users/zulhilmi/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle Reason: image not found - /Users/zulhilmi/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle from /Users/zulhilmi/.rvm/gems/ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `block in require' from /Users/zulhilmi/.rvm/gems/ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:240:in `load_dependency' from /Users/zulhilmi/.rvm/gems/ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `require' from /Users/zulhilmi/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/completion.rb:10:in `<top (required)>' from /Users/zulhilmi/.rvm/gems/ruby-2.3.1@useradmin/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `require' from …

3
通过Nginx的EventSource /服务器发送的事件
在服务器端,使用Sinatra和一个stream块。 get '/stream', :provides => 'text/event-stream' do stream :keep_open do |out| connections << out out.callback { connections.delete(out) } end end 在客户端: var es = new EventSource('/stream'); es.onmessage = function(e) { $('#chat').append(e.data + "\n") }; 当我通过直接使用应用程序时http://localhost:9292/,一切正常。连接是持久的,所有消息都传递给所有客户端。 但是,当它通过Nginx时http://chat.dev,该连接将被丢弃,并且每秒大约会触发一次重新连接。 Nginx的安装程序对我来说没问题: upstream chat_dev_upstream { server 127.0.0.1:9292; } server { listen 80; server_name chat.dev; location …
78 ruby  nginx  sinatra 

3
当您的Gemfile需要较旧版本的捆绑程序时,如何“捆绑安装”?
我在一个较旧的具有Gemfile的Rails项目中。我尝试将宝石添加到Gemfile中,bundle install但出现错误: Bundler could not find compatible versions for gem "bundler": In Gemfile: rails (= 3.0.0) ruby depends on bundler (~> 1.0.0) ruby Current Bundler version: bundler (1.1.5) This Gemfile requires a different version of Bundler. 它使用的Rails版本需要bundler〜> 1.0.0,但是我已经安装了1.1.5,并将其用于其他项目。通常我会使用,bundle exec ...但是由于我们正在谈论的是捆绑器,因此它要复杂得多。如何在我的Gemfile中添加gem并bundle install在使用所需的bundler版本时运行?

2
Rails 4中secret_key_base的用途是什么
我是Rails 4的新手,并且不了解Rails 4中secret_key_baseunder的使用。config/secrets.yml您能解释一下这个概念吗? 此外,当我在生产环境中我的工作,我提示设置secret_key有devise.rb,config.secret_key和secret_key_base。但是,我可以使用该rake secret命令生成一个新的机密。 开发和生产环境之间有什么区别? secret_key当我secret_key_base每次添加新生成的内容时,它如何匹配新生成的内容? 如何通过其他服务器保护应用程序?

2
将以毫秒为单位的时间转换为日期时间
我已经使用ruby脚本将iso时间戳转换为纪元,我正在解析的文件具有以下时间戳结构: 2009-03-08T00:27:31.807 由于我想保留毫秒,因此我使用了以下Ruby代码将其转换为纪元时间: irb(main):010:0> DateTime.parse('2009-03-08T00:27:31.807').strftime("%Q") => "1236472051807" 但是在python中,我尝试了以下操作: import time time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime(1236472051807)) 但是我没有把原定的时间日期倒退, >>> time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime(1236472051807)) '41152-03-29 02:50:07' >>> 我想知道这与我的格式化方式有关吗?
77 python  ruby  datetime  epoch 

10
我如何让Haml与Rails合作?
我试图让Haml与我的Ruby on Rails项目一起工作。我是Ruby on Rails的新手,我真的很喜欢。但是,当我尝试添加aplication.html.haml或index.html.haml视图时,我只会收到错误消息。 我使用NetBeans作为我的IDE。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.