53 lines
953 B
Ruby
53 lines
953 B
Ruby
![]() |
module Ransack
|
||
|
module Naming
|
||
|
|
||
|
def self.included(base)
|
||
|
base.extend ClassMethods
|
||
|
end
|
||
|
|
||
|
def persisted?
|
||
|
false
|
||
|
end
|
||
|
|
||
|
def to_key
|
||
|
nil
|
||
|
end
|
||
|
|
||
|
def to_param
|
||
|
nil
|
||
|
end
|
||
|
|
||
|
def to_model
|
||
|
self
|
||
|
end
|
||
|
end
|
||
|
|
||
|
class Name < String
|
||
|
attr_reader :singular, :plural, :element, :collection, :partial_path, :human, :param_key, :route_key, :i18n_key
|
||
|
alias_method :cache_key, :collection
|
||
|
|
||
|
def initialize
|
||
|
super("Search")
|
||
|
@singular = "search".freeze
|
||
|
@plural = "searches".freeze
|
||
|
@element = "search".freeze
|
||
|
@human = "Search".freeze
|
||
|
@collection = "ransack/searches".freeze
|
||
|
@partial_path = "#{@collection}/#{@element}".freeze
|
||
|
@param_key = "q".freeze
|
||
|
@route_key = "searches".freeze
|
||
|
@i18n_key = :ransack
|
||
|
end
|
||
|
end
|
||
|
|
||
|
module ClassMethods
|
||
|
def model_name
|
||
|
@_model_name ||= Name.new
|
||
|
end
|
||
|
|
||
|
def i18n_scope
|
||
|
:ransack
|
||
|
end
|
||
|
end
|
||
|
|
||
|
end
|