Реализация твиттер-хэштега на рельсах - PullRequest
18 голосов
/ 15 марта 2011

Я хочу реализовать в своем приложении хештег, похожий на твиттер.

Допустим, у меня есть пользовательский ввод в текстовую область «Я иду в #london из #paris», затем я хочу создатьОблако тегов хэштегов.

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

У кого-нибудь есть опыт в этой области, которым они хотели бы поделиться?Спасибо.

Ответы [ 3 ]

12 голосов
/ 24 марта 2011

Да, ActsAsTaggableOn должен быть в порядке. Как намекал @etang, это тяжелый камень, но он выполняет свою работу. Если вы ищете простой способ извлечения тегов из текста, вы можете взглянуть на https://github.com/twitter/twitter-text-rb. Он имеет несколько хороших регулярных выражений, которые могут сэкономить вам время.

Twitter::Extractor.extract_hashtags("my #favorite #site is http://foo.com/home#boo")

Это вернуло бы "любимый" и "сайт", но не "бу" (как и следовало ожидать).

3 голосов
/ 07 октября 2013

для опоздавших…

Я написал простой драгоценный камень именно для этого:
https://github.com/ralovely/simple_hashtag

Оставьте отзыв или ответьте, если хотите.

1 голос
/ 24 марта 2011

ActsAsTaggableOn должно работать нормально, если вы не слишком беспокоитесь о масштабировании. Он отслеживает ваши фактические теги по ActsAsTaggableOn::Tag и отслеживает отношение «многие ко многим» к вашим сообщениям по ActsAsTaggableOn::Tagging. Он также использует полиморфную ассоциацию в ActsAsTaggableOn::Tagging, поэтому вы можете пометить в разных пространствах имен.

...