fix for tag create/find

This commit is contained in:
Kyle Drake 2024-08-19 22:37:31 -05:00
parent ea45da0dbd
commit c4487af180
2 changed files with 6 additions and 2 deletions

View file

@ -904,7 +904,7 @@ class Site < Sequel::Model
end
def add_tag_name(name)
add_tag Tag.find_or_create(name: name)
add_tag Tag.create_unless_exists(name)
end
def before_create

View file

@ -17,7 +17,11 @@ class Tag < Sequel::Model
def self.create_unless_exists(name)
name = clean_name name
return nil if name == '' || name.nil?
dataset.filter(name: name).first || create(name: name)
begin
dataset.filter(name: name).first || create(name: name)
rescue Sequel::UniqueConstraintViolation
dataset.filter(name: name).first
end
end
def self.autocomplete(name, limit=3)