2011-01-13 16 views
2

我試圖給我的rails應用程序添加標籤 - 我寧願不使用插件/ gem。Rails 3中標記系統的好方法?

我的需求是相當簡單:

用戶可以將多個標籤添加到單個項目,他們可以搜索這些標籤的物品,他們可以看到一個網頁,其中列出了他們以前使用過的所有標籤。

我想知道的是,最好的方法是什麼?模型中的數組/散列被標記?一個連接表?

任何建議將不勝感激。

回答

6

我會使用標籤和taggableItems之間的連接表。然後用一個before_create,你可以檢查標籤是否已經在系統中,如果它們不在系統中,就創建它們。接下來,您可以使用searchlogic(我認爲github上有一個rails 3分支)以便於標記/ taggableItems搜索。如果給用戶一些自動完成或者使用最多的標籤的簡短列表,給用戶一些反饋信息是很好的,但這取決於你/設計。

+0

謝謝,這聽起來不錯! – Elliot 2011-01-13 21:00:16