Sha256: 082b0154d24ec48bcc8f2fba0ec9cdecd027232a77a7466ba23d6d5a746d8aea
Contents?: true
Size: 1.03 KB
Versions: 2
Compression:
Stored size: 1.03 KB
Contents
module Gris module RootPresenter def self.included(base) base.class_eval do include Gris::Presenter def self.resource_links(name, args = []) args += %w(page size) link name.to_s.pluralize do link = { href: "#{Gris::Identity.base_url}/#{name.to_s.pluralize}#{format_args(args)}", templated: true } link end link name do { href: "#{Gris::Identity.base_url}/#{name.to_s.pluralize}/{id}", templated: true } end end def self.endpoint_link(name, args = []) link name do link = { href: "#{Gris::Identity.base_url}/#{name}#{format_args(args)}" } link[:templated] = true unless args.blank? link end end private def format_args(args = []) return unless args.any? "{?#{args.join(',')}}" end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
gris-0.4.5 | lib/gris/output_formatters/root_presenter.rb |
gris-0.4.4 | lib/gris/output_formatters/root_presenter.rb |