Skip to content

Commit

Permalink
Set slug to nil on dup
Browse files Browse the repository at this point in the history
Resolves #482
  • Loading branch information
Adrian Mugnolo committed Nov 13, 2013
1 parent 59dbe5e commit aa3b4a6
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 0 deletions.
5 changes: 5 additions & 0 deletions lib/friendly_id/base.rb
Original file line number Diff line number Diff line change
Expand Up @@ -246,5 +246,10 @@ def to_param
friendly_id.presence.to_param || super
end
end

# Clears slug on duplicate records when calling `dup`.
def dup
super.tap { |duplicate| duplicate.slug = nil }
end
end
end
7 changes: 7 additions & 0 deletions test/shared.rb
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,13 @@ module Slugged
end
end

test "should set the slug to nil on dup" do
with_instance_of model_class do |record|
record2 = record.dup
assert_nil record2.slug
end
end

test "when validations block save, to_param should return friendly_id rather than nil" do
my_model_class = Class.new(model_class)
self.class.const_set("Foo", my_model_class)
Expand Down

0 comments on commit aa3b4a6

Please sign in to comment.