【发布时间】:2015-01-02 13:04:02
【问题描述】:
在我的 rails 应用程序中,我有一个包含 4 列的 Hashtag 表:
- 身份证
- post_id(标签关联的帖子的id)
- 标签(实际标签的字符串)
- tagging_user_id(创建主题标签的用户)
在我的 index 方法中,我想返回给定用户创建的所有 Hashtags:
def index
@hashtags = Hashtag.where("tagging_user_id = ?", params[:tagging_user_id]).reverse_order
end
正如预期的那样,它为我提供了用户创建的每个主题标签。
然而,我真的很想只让每个主题标签中的一个向用户展示,各个数据库条目并不重要。有没有一种 Rails 方法可以根据“标签”列给我唯一的 Hashtag 条目,所以我不会得到多个相同的标签?
或者,我应该在我的应用程序中而不是我的 API 调用中处理这个抽象吗?
谢谢, JA
【问题讨论】:
-
只是不要创建重复项。当用户尝试创建新标签时使用方法 find_or_create。如果已经有类似title的tag,rails不会创建,而是从db中选择。
-
@PavelTkackenko 您的评论与问题无关..
标签: ruby ruby-on-rails-4 hashtag