对 Rails 来说有点新。
您将如何简化、美化此方法:
def find_index
index = 0
@ipn.each {|p|
index = 4 if p = "new" #this is just a dummy line
}
index
end
如您所见,它很丑陋。如何删除顶部的索引定义和底部的索引以返回 - Ruby 方式?
对 Rails 来说有点新。
您将如何简化、美化此方法:
def find_index
index = 0
@ipn.each {|p|
index = 4 if p = "new" #this is just a dummy line
}
index
end
如您所见,它很丑陋。如何删除顶部的索引定义和底部的索引以返回 - Ruby 方式?
我想你想要这个方法: http ://ruby-doc.org/core-1.9.3/Enumerable.html#method-i-find_index
def find_index
@ipn.find_index{|p| p == "new" }
end
我还将变量名“@ipn”更改为“@ipns”,因为它似乎是一个可枚举的。
为了避免混淆,我可能会将方法重命名为“find_ipn_index”,所以它看起来像这样:
def find_ipn_index
@ipns.find_index{|p| p == "new" }
end
或者,如果 self.ipns 可用,则根本不要为此定义新方法,只需调用:
self.ipns.find_index{|p| p == "new" }