module PrefixedIds
def self.find(prefix_id)
def self.find(prefix_id) prefix, _ = split_id(prefix_id) models.fetch(prefix).find_by_prefix_id(prefix_id) rescue KeyError raise Error, "Unable to find model with prefix `#{prefix}`. Available prefixes are: #{models.keys.join(", ")}" end
def self.split_id(prefix_id, delimiter = PrefixedIds.delimiter)
def self.split_id(prefix_id, delimiter = PrefixedIds.delimiter) prefix, _, id = prefix_id.to_s.rpartition(delimiter) [prefix, id] end