我有以下的情況 -使用規則引擎
我有Company
,我有Incident
。
A Company
提供許多服務(Service
),因此 - has_and_belongs_to_many :services
。
的Incident
需要一些服務(Service
),因此 - has_and_belongs_to_many :services
現在對於一個給定的事件,我需要找到所有提供我所需要的服務公司。我期望使用規則引擎來做到這一點,因爲我有更復雜的條件來適用於選擇合適的公司。
我看着這個名爲 - Wongi-engine
(github.com/ulfurinn/wongi-engine)的寶石,但它太難纏我的頭,寫規則。
你能爲我提供任何指針嗎?謝謝!
我能想出以下facts
:
engine << [ "CompanyA", "offers", "serviceA" ]
engine << [ "CompanyB", "offers", "serviceB" ]
engine << [ "CompanyA", "offers", "serviceB" ]
engine << [ "CompanyB", "offers", "serviceC" ]
engine << [ "IncidentA", "requires", "serviceC" ]
engine << [ "IncidentA", "requires", "serviceA" ]
編輯: 也曾經我寫這些規則,我怎麼使用Rails的模型來代替這些字符串的?在Ruby on Rails應用程序的上下文中是否有將事實載入引擎的最佳實踐?
我的用例是,用戶選擇一個事件並要求可以爲事件提供服務的公司。我需要問規則引擎的公司名單,可以做的伎倆:)
太棒了。謝謝你。所有這些使得現在更加合理。我會盡力將其納入我的應用程序。 –
還有一件事,我該如何將我的Rails應用程序與我的服務,事件和公司模型進行整合?有沒有什麼好的做法將事實加載到引擎中?謝謝!!編輯此部分的問題:) –
好的,我修改了這個問題,以顯示如何使用一些ActiveModel內部連接填充事實。 – SteveTurczyn