Sha256: ba3b2930f89a46051055d8b95317d86b8e2a881c6ebc53355beb4b2eeafb1f85
Contents?: true
Size: 789 Bytes
Versions: 1
Compression:
Stored size: 789 Bytes
Contents
require 'active_support/rescuable' require 'rack/response' require 'active_support/json' module JSONAPIonify::Api class Resource extend JSONAPIonify::Autoload autoload_all extend Definitions extend ClassMethods include ErrorHandling include Builders include Defaults def self.inherited(subclass) super(subclass) subclass.class_eval do context(:api, readonly: true) { api } context(:resource, readonly: true) { self } end end def self.example_instance(id=1) OpenStruct.new.tap do |instance| instance.send "#{id_attribute}=", (id).to_s attributes.select(&:read?).each do |attribute| instance.send "#{attribute.name}=", attribute.example end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
jsonapionify-0.0.1.pre | lib/jsonapionify/api/resource.rb |