Skip to content

Undefined method render for class: JSONAPI::Serializable::Render #13

@mihaimuntenas

Description

@mihaimuntenas

Trying to use with Hanami (1.1.0) and encountered the following error:

NoMethodError: undefined method render' for JSONAPI::Serializable::Renderer:Class /home/mihai/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/jsonapi-hanami-0.1.2/lib/jsonapi/hanami/rendering.rb:28:in _jsonapi_render_success'
/home/mihai/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/jsonapi-hanami-0.1.2/lib/jsonapi/hanami/rendering.rb:21:in _jsonapi_render' /home/mihai/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/jsonapi-hanami-0.1.2/lib/jsonapi/hanami/rendering.rb:12:in block (2 levels) in included'

Problem seems to be that JSONAPI::Serializable::Renderer#render is an instance method not a class one in https://github.com/jsonapi-rb/jsonapi-serializable/blob/cabf10e319a3ce8e52412d6f435fdca458ac2b56/lib/jsonapi/serializable/renderer.rb#L38 (also in master) and is used as a class method in

self.body = JSONAPI::Serializable::Renderer.render(@_jsonapi[:data],
(also in master).

Maybe an oversight in Renderer class, missing something like this:

def self.render(resources, options = {})
  self.new.render(resources, options)
end

Gems versions:
jsonapi-hanami: 0.1.2
jsonapi-renderer: 0.2.0
jsonapi-serializable: 0.3.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions