小编Adi*_*ghi的帖子

独角兽超时处理

我想知道从我的应用程序跟踪独角兽超时的最佳方法是什么.

应用程序的一些部分很慢,它们目前悄然超时.我可以增加超时但这就是在地毯下推迟问题.理想情况下,我想获得空气制动通知或其他类似的效果.我不是在寻找性能指南,只是一种有效且可靠地了解超时的方法.

其他人如何使用独角兽从他们的rails应用程序处理超时?扫描nginx错误日志?插入unicorn配置中的处理程序?nginx配置中的处理程序?

[Ubuntu 12.04 + nginx + unicorn + rails 3.2 + ruby​​ 1.9.3]

ruby ruby-on-rails nginx unicorn ruby-on-rails-3

7
推荐指数
1
解决办法
1903
查看次数

Ruby 枚举:在块返回 true 的第一个 n

我想获取通过块的第一个“n”个条目

a = 1..100_000_000 # Basically a long array

# This iterates over the whole array -- no good
b = a.select{|x| x.expensive_operation?}.take(n)
Run Code Online (Sandbox Code Playgroud)

一旦我有 n 个“昂贵”条件为真的条目,我想短路迭代。

你有什么建议?take_while 并保持计数 n?

# This is the code i have; which i think can be written better, but how?
a = 1..100_000_000 # Basically a long array
n = 20
i = 0
b = a.take_while do |x|
  ((i < n) && (x.expensive_operation?)).tap do |r|
    i += 1
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby enumerable

3
推荐指数
1
解决办法
391
查看次数

为什么不出现验证错误?

在我的情况下,即使有验证错误,它也不会显示验证错误消息.

例如,我将这两列保留为空,并确保键入了验证字.然后,如果我尝试创建新记录.它不会显示验证错误:(它返回到表单但没有消息.

我一直在这个项目中一直使用验证错误消息,我从来没有遇到过这个问题.

任何人都可以在这里找到问题?

在主题模型中验证

validates :title,   
    :presence => {:message => "can't be empty" },    
    :uniqueness => {:message => "choose unique title" },    
    :length => { :maximum => 20, :message => "must be less than 20 characters" }

validates :body,   
    :presence => {:message => "can't be empty" },    
    :length => { :maximum => 500, :message => "must be less than 20 characters" }
Run Code Online (Sandbox Code Playgroud)

形成

<%= form_for([@community, @topic]) do |f| %>
.....

    <%= button_tag( :class => "btn btn-primary") do %>
    Create …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails ruby-on-rails-3

1
推荐指数
1
解决办法
543
查看次数