Class: JsonApiServer::Errors
- Inherits:
-
Object
- Object
- JsonApiServer::Errors
- Includes:
- ApiVersion, Serializer
- Defined in:
- lib/json_api_server/errors.rb
Overview
For one or more errors: http://jsonapi.org/examples/#error-objects.
Serializes to an arrray of errors. Skips attributes that are nil. Ignores non-jsonapi attributes.
error.to_json { ":jsonapi": { ":version": "1.0" }, ":errors": [{ ":id": 1234 ":status": "422", ":code": 5, ":source": { ":pointer": "/data/attributes/first-name" }, ":title": "Invalid Attribute", ":detail": "First name must contain at least three characters.", ":meta": { ":attrs": [1,2,3] }, ":links": { ":self": "http://example.com/user" } }] } Use for singular or multiple errors.
Instance Method Summary collapse
- #as_json ⇒ Object
-
#initialize(errors) ⇒ Errors
constructor
A new instance of Errors.
Methods included from ApiVersion
Methods included from Serializer
Constructor Details
#initialize(errors) ⇒ Errors
Returns a new instance of Errors.
34 35 36 37 38 39 40 41 |
# File 'lib/json_api_server/errors.rb', line 34 def initialize(errors) errors = errors.is_a?(Array) ? errors : [errors] @errors = errors.map do |error| JsonApiServer::Error.new(error).error end @errors.compact! @errors end |
Instance Method Details
#as_json ⇒ Object
43 44 45 46 47 48 |
# File 'lib/json_api_server/errors.rb', line 43 def as_json { 'jsonapi' => jsonapi, 'errors' => @errors } end |