2012-03-15 52 views
3

我有一個與Person和Company模型多態關聯的模型用戶。friendly_id在創建新用戶時發生錯誤

我正在使用friendly_id顯示Person和Company的固定鏈接。

人有first_name屬性,我把以下放在我的模型中。

extend FriendlyId 
friendly_id :first_name 

現在,當我更新我現有的條目,然後slug得到完美創建。但是,當我嘗試創建引發路由錯誤的新用法時會出現問題。其次,每個人都有一個用戶,並且用戶有一個用戶名,所以當我嘗試下面這個命令時,那麼更新和新記錄都會拋出未知方法用戶名爲nil類錯誤。

extend FriendlyId 
friendly_id :person_permalink, use: [:slugged, :history] 

def person_permalink 
    "#{self.user.username} #{self.name}" 
end 
+0

_But問題出現在我嘗試創建引發路由錯誤的新用法時,請提供更多信息。你說有一個錯誤,但沒有提供任何堆棧跟蹤 – 2012-03-15 10:57:54

回答

2

我認爲這可能與在friendly_id上的before_save有關。

在創建friendly_id時,相關聯的記錄和ID不會同步,self.user爲零。

嘗試在friendly_id中使用主鍵ID table-column-value的用戶有類似的問題。

相關問題