Мне интересно создать надежную систему достижений для моего приложения Ruby on Rails.
Достижения могут происходить множеством способов. Обычно у нас бы есть некоторые критерии, которые могут случиться с несколькими моделями, некоторые из которых необходимы, некоторые необязательные (сочетание и совпадение), которые запускают достижение.
Я бы сказал, что это похоже на систему достижений здесь или на значки Foursquare. В идеале, если есть современный инструмент, который может помочь абстрагировать большую часть работы в некоторых DSL, это было бы фантастически.
Мне интересно узнать, как другие решили эту проблему, используя Ruby или Ruby on Rails. Построение этого с нуля кажется необоснованным, поскольку я уверен, что он был разрешен много раз.