2012-12-16 26 views
0

我在用Devise使用act_as_taggable_on。
每個用戶都可以在他們的個人資料編輯頁面上將他們的標籤設置爲最多3個標籤。
在它保存之前,我希望有如下所示的事務。 這是我爲我的社區模型實施的一個腳手架。如何在使用Devise進行更新之前添加事務?

params[:community][:tag_list] = params[:community][:tag_list].gsub(/[ ]+/," ") 
params[:community][:tag_list] = params[:community][:tag_list].gsub(/[.]+/,",") 

我不知道什麼時候使用Devise來做這件事。

回答

1

將代碼移至模型以處理此功能。

alias_method :super_tag_list=, :tag_list= 
def tag_list=(tag_names) 
    self.super_tag_list = tag_names.gsub(/[ ]+/," ").gsub(/[.]+/,",") 
end 
+0

謝謝!但它說超級:沒有超類方法'tag_list ='爲#<用戶:0x0000001770de08> – HUSTEN

+0

在方法之前添加'acts_as_taggable'。 – siddick

+0

我有'acts_as_taggable_on \t:tags' – HUSTEN

相關問題