在rails上实现类似twitter的hashtag
我想在我的应用程序上实现类似twitter的hashtag。
假设我有一个文本区域的用户输入“我要从#paris转到#london”然后我想构建标签云的标签云。
我正在考虑使用act-as-taggable-on。 所以我从后端的文本中找到所有的hashtags,然后将其保存到tag字段。
任何人都有这方面的经验,他们想分享? 谢谢。
是的,ActsAsTaggableOn应该没问题。 正如@etang提到的那样,它是一个沉重的gem,但它完成了工作。 如果您正在寻找一种从文本中提取标签的简单方法,您可能需要查看https://github.com/twitter/twitter-text-rb 。 它有一些很好的正则表达式,可以节省你一些时间。
Twitter::Extractor.extract_hashtags("my #favorite #site is http://foo.com/home#boo")
这将返回“最喜欢的”和“网站”而不是“嘘声”(如预期的那样)。
如果您不太担心缩放, ActsAsTaggableOn
应该可以正常工作。 它通过ActsAsTaggableOn::Tag
跟踪您的实际标签,并通过ActsAsTaggableOn::Tagging
跟踪您的post的多对多关系。 它还在ActsAsTaggableOn::Tagging
使用多态关联,因此您可以在不同的命名空间中进行标记。