Skip to content

Instantly share code, notes, and snippets.

@knowuh
Created May 2, 2011 19:15
Show Gist options
  • Save knowuh/952174 to your computer and use it in GitHub Desktop.
Save knowuh/952174 to your computer and use it in GitHub Desktop.
silly unique name
# TODO: The next two methods can be extracted to
# a more general form: (write tests too)
def self.name_is_taken(name)
return true if self.find_by_name(name)
return false
end
def self.gen_unique_name(name)
while self.name_is_taken(name)
number = name[/\d+$/]
if number
name = name.gsub(number,"#{number.to_i +1}")
else
name = "#{name} (2)"
end
end
return name
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment