我正在为 Sonar(现在称为 SonarQube)编写一个插件,对于这个插件中的一个小部件,我需要从属性表中返回所有属性的列表,其中包含一个包含“sonar.score.TitleCup:”的键。我是一名 Java 程序员,但小部件是用 Ruby Scriptlets 编写的,涉及 Lambda 表达式和闭包。我今天花了一半的时间试图理解它们,但仍然无法使这个小部件工作。我从以下代码开始:
properties = Property.find(:all, :conditions => {:prop_key => "sonar.score.TitleCup:BestCoverage"})
这有效,并返回了我正在寻找的属性,但我需要能够找到 prop_key 包含“ sonar.score.TitleCup:
”的所有属性。
我尝试了以下操作,但它破坏了小部件(小部件显示错误消息)。
properties = Property.find(:all, :conditions => {:prop_key.include? "sonar.score.TitleCup:" => true})
任何熟悉 Ruby 和 Lambda 表达式的人可以帮助我吗?我什至应该使用 Lambda 表达式吗?