0

アプリでacts_as_taggable_onを使用していますが、投稿にタグが付けられているタグID(タグ名ではない)を抽出したいと思います。

私のアプリには投稿コントローラーがあり、rubyコンソールで次のことができます。

 >> post = Post.find(1)
   => #<Post id: 1, content: "Aliquam cupiditate ea deserunt et id placeat molest...", user_id: 1, created_at: "2011-07-06 19:29:44", updated_at: "2011-07-06 19:29:44">
 >> tags = post.tag_counts_on("topics")
   => [#<ActsAsTaggableOn::Tag id: 1, name: "Politics">, #<ActsAsTaggableOn::Tag id: 2, name: "Economics">] 

ここでは、投稿がトピックID「Politics」と「Economics」でタグ付けされていることを示しました。私の問題は、後で使用するためにこの情報をCookieに保存したいということです。ただし、Cookieにハッシュを保存することはできず、情報の文字列しか保存できません。私が行った場合:

 session[:store_name] = tags.join(",")

そして後で:

 tags = session[:store_name].split(",")

ハッシュを取得します:

 ["Politics", "Economics", ...]

ただし、このハッシュには、各トピックタグのtag_idのレコードがありません。ある時点でIDを引き出し、acts_as_taggable_on出力で後で使用できるように保存する方法はありますか?または、acts_as_taggable_onからの出力を後で使用するために保存する方法に関するいくつかの提案はありますか?

4

1 に答える 1

2

IDが必要な場合は、

tags.map(&:id).join(",")
于 2011-07-20T14:45:19.793 に答える