Ruby on rails 友好的_id,用历史更新slug
我使用的Ruby on rails 友好的_id,用历史更新slug,ruby-on-rails,friendly-id,Ruby On Rails,Friendly Id,我使用的友好\u id如下: class Page < ActiveRecord::Base extend FriendlyId friendly_id :title, :use => [:slugged, :history] end class页面[:sluged,:history] 结束 我希望能够设置slug(即,能够设置自定义URL),而无需更改标题和在历史中维护旧slug 使用友好的\u id是否有一种简单的方法来实现这一点,或者我是否需要与历史记录表进行交互
友好\u id
如下:
class Page < ActiveRecord::Base
extend FriendlyId
friendly_id :title, :use => [:slugged, :history]
end
class页面[:sluged,:history]
结束
我希望能够设置slug(即,能够设置自定义URL),而无需更改标题和在历史中维护旧slug
使用友好的\u id
是否有一种简单的方法来实现这一点,或者我是否需要与历史记录表进行交互
谢谢 我通过添加一个实例属性
url\u seed
实现了这一点:
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
class页面[:sluged,:history]
属性可访问:标题,:url\u种子
属性访问器:url\u种子
用于url的def slug_
self.url\u seed.blank?self.title:self.url\u seed
结束
结束
现在,保存时,如果设置了url\u seed
,friendly\u id
使用自定义url文本设置url。工作就像一个符咒:)