module DryCrudJsonapi
Constants
- VERSION
Public Instance Methods
jsonapi_class()
click to toggle source
# File lib/dry_crud_jsonapi.rb, line 32 def jsonapi_class @jsonapi_class ||= Hash.new do |hash, class_name| hash[class_name] = model_serializer || Serializer.new(class_name).build end end
jsonapi_expose()
click to toggle source
# File lib/dry_crud_jsonapi.rb, line 38 def jsonapi_expose { controller: self, current_user: current_user } end
jsonapi_pagination(resources)
click to toggle source
# File lib/dry_crud_jsonapi.rb, line 27 def jsonapi_pagination(resources) return unless action_name == 'index' && resources.present? Pager.new(resources, model_class, params).render end
rescued_polymorphic_path(*objects)
click to toggle source
# File lib/dry_crud_jsonapi.rb, line 42 def rescued_polymorphic_path(*objects) polymorphic_path(*objects) rescue nil end
Private Instance Methods
json_render_entries()
click to toggle source
# File lib/dry_crud_jsonapi.rb, line 48 def json_render_entries jsonapi_render(entries) end
json_render_entry()
click to toggle source
# File lib/dry_crud_jsonapi.rb, line 52 def json_render_entry jsonapi_render(entry) end
jsonapi_fields()
click to toggle source
# File lib/dry_crud_jsonapi.rb, line 64 def jsonapi_fields params.permit(fields: {}).fetch('fields', []).to_h.collect do |model, string| [model, string.split(',')] end.to_h end
jsonapi_include()
click to toggle source
# File lib/dry_crud_jsonapi.rb, line 60 def jsonapi_include params.permit(:include)[:include] || [] end
jsonapi_render(object)
click to toggle source
# File lib/dry_crud_jsonapi.rb, line 56 def jsonapi_render(object) render jsonapi: object, include: jsonapi_include, fields: jsonapi_fields, expose: jsonapi_expose end