orbit4-5/app/models/concerns/slug.rb

17 lines
293 B
Ruby

module Slug
extend ActiveSupport::Concern
included do
before_create :generate_uid
end
def to_param
[self.title.gsub(/[ "'*@#$%^&()+=;:.,?>|\\<~_!]/,'-').gsub(/-{2,}/,'-'), self.uid].join("-")
end
private
def generate_uid
self.uid = rand(36**8).to_s(36)
end
end