如何在wongi引擎中使用较少的匹配器

时间:2016-03-06 13:58:37

标签: ruby rule-engine

我已经完成了Wongi Tutorial,偶然发现了 less 更多匹配器。对我而言,如何正确使用它们并不明显。匹配者有两个论点,但我认为它应该是三个。我的想法是这样使用它:

engine << ['a', 'price', 4200.31]

price_ok = engine.rule 'price is ok' do
  forall {
    greater :A, 'price', 4100
    less :A, 'price', 4300
  }
end

所以如果价格在一定范围内,价格就没问题。如何使用匹配器实现此目的?

1 个答案:

答案 0 :(得分:1)

我自己找到了答案:

engine << ['a', 'price', 4200.31]

price_ok = engine.rule 'price is ok' do
  forall {
    has :_, 'price', :Price
    greater :Price, 4100
    less :Price, 4300
  }
end

您必须使用 has 设置:Price 谓词,以便稍后对其进行比较。