First commit!
This commit is contained in:
17
app/models/path_segment.rb
Normal file
17
app/models/path_segment.rb
Normal file
@@ -0,0 +1,17 @@
|
||||
class PathSegment < ApplicationRecord
|
||||
validates :segment, presence: true, uniqueness: true
|
||||
validates :usage_count, presence: true, numericality: { greater_than: 0 }
|
||||
|
||||
# Class method to find or create a segment
|
||||
def self.find_or_create_segment(segment)
|
||||
find_or_create_by(segment: segment) do |path_segment|
|
||||
path_segment.usage_count = 1
|
||||
path_segment.first_seen_at = Time.current
|
||||
end
|
||||
end
|
||||
|
||||
# Increment usage count
|
||||
def increment_usage!
|
||||
increment!(:usage_count)
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user