しめ鯖日記

swift, iPhoneアプリ開発, ruby on rails等のTipsや入門記事書いてます

【Rails】acts_as_taggableで簡単にModelにタグ付けする

github.com

いつものようにBundlerでインストールします。

gem 'acts-as-taggable-on'

以下のコマンドでDBのセットアップをします。

rake acts_as_taggable_on_engine:install:migrations
rake db:migrate

MySQLを使っている場合は更に以下コマンドを実行します。

rake acts_as_taggable_on_engine:tag_names:collate_bin

使い方は簡単で、Modelでacts_as_taggableを呼び出すだけです。

class User < ActiveRecord::Base
  acts_as_taggable
end

これで以下のようにタグ一覧を呼び出せます。

User.new.tag_list

追加はtag_list.addで行います。

u = User.new
u.tag_list.add("Tag")

削除はremoveです。

u = User.new
u.tag_list.add("Tag")
u.tag_list.remove("Tag")

初期化時に値を渡す事もできます。

User.new(tag_list: "TAG")
User.new(tag_list: ["TAG1", "TAG2"])

他にもとても多くの機能を持っているので興味があればGithubの方も見てください。