https://github.com/bradphelan/rocket_tag
- это новая библиотека, которую я только что создал вчера.Он реализован с использованием squeel gem Эрни Миллера, где это возможно, поэтому весь страшный SQL, необходимый для правильной реализации библиотеки тегов, совершенно чист.
, который намного чище, хотя я не претендую на то, что обработал каждую функцию, которую реализовал act_as_taggable_on.Завтра всегда есть:)
Так что, если вам нужна библиотека тегов, вы можете погрузиться в нее и добавить функции в rocket_tag.
Он также заботится о производительности и позволяет избежать проблемы N + 1 при загрузке связанных тегов.Стоит посмотреть, но на данный момент она очень альфа , и я добавлю функции, когда мой проект требует их.
Кстати.Благодаря действиям как помечен на.Я никоим образом не пылаю в библиотеке.Я позаимствовал схему и идеи из нее, но когда я захотел исправить свои собственные функции, я почувствовал, что стиль SQL в коде довольно сложно понять, и после использования https://github.com/ernie/squeel для моих запросов AR я почувствовал, что могу работатьлучше с чистого листа.
RocketTag также имеет комплексный набор тестов rspec https://github.com/bradphelan/rocket_tag/blob/master/spec/rocket_tag/taggable_spec.rb