2012-07-06 39 views
3

我使用friendly_id如下:friendly_id,更新蛞蝓與歷史

class Page < ActiveRecord::Base 
    extend FriendlyId 
    friendly_id :title, :use => [:slugged, :history] 
end 

我希望能夠設置蛞蝓(即可以設置自定義URL)不改變標題和維護舊slu in中的歷史。

是否有直接的方式使用friendly_id來做到這一點,還是我需要與歷史記錄表進行交互?

謝謝!

class Page < ActiveRecord::Base 
    extend FriendlyId 
    friendly_id :slug_for_url, :use => [:slugged, :history] 

    attr_accessible :title, :url_seed 
    attr_accessor :url_seed 

    def slug_for_url 
    self.url_seed.blank? ? self.title : self.url_seed 
    end 
end 

現在,保存,如果url_seed設置,friendly_id使用自定義URL文本設置URL:

回答

5

我通過增加一個實例屬性url_seed做到了這一點。作品像一個魅力:)