I'm using the gem Friendly ID, and I currently have to do 2 saves in order to save the slug.
It doesn't seems right to me.
class Contractor < ActiveRecord::Base
include FriendlyId
friendly_id :slug_candidates, use: :slugged, slug_column: :alias
after_commit :generate_new_alias, unless: Proc.new {|contractor| contractor.business_name_changed? }
def slug_candidates
[
:business_name,
[:business_name, :city],
[:business_name, :city, :state]
]
end
def generate_new_alias
if self.alias != self.alias_was
self.alias = nil
self.save
end
end
end
Any idea what I'm doing wrong ?