Нечеткое совпадение тегов с актами как теги

Поэтому я использую Act_as_taggable на модели. Я хотел бы быть в состоянии найти теги с какой-то %LIKE% соответствие, но я не уверен, как.

Мой текущий код:

@companies = Company.tagged_with(@query, :any => true)

делать это не работает:

tagged_with("%#{@query}%", :any => true)

Есть идеи?

2 ответа

Решение

Решается путем выборки тегов вручную

  tags = Tag.where("name LIKE ?", "%#{@query}%").pluck(:name)
  @companies = Company.tagged_with(tags, :any => true)

Однако для этого потребовалось создать пустой Tag модель, которая не создана act_as_taggable.

Возможно не лучшее решение, но оно работает:)
Я скорее сделаю это "взломать", чем писать свои собственные модели тегов.

      @companies = Company.tagged_with('query', wild: true)

Тебе стоит попробовать это.

Вы также можете использовать параметр: wild => true вместе с параметром: any или: exclude. Он будет искать% awesome% и% cool% в SQL

Другие вопросы по тегам