active_model_serializers

https://github.com/rails-api/active_model_serializers

Ruby

ActiveModel::Serializer implementation and Rails hooks

ActiveModelSerializers::Callbacks::ClassMethods#around_render

Defines a callback that will get called around the render method,
whether it is as_json, to_json, or serializable_hash

  class ActiveModelSerializers::SerializableResource
    include ActiveModelSerializers::Callbacks

    around_render do |args, block|
      tag_logger do
        notify_render do
          block.call(args)
        end
      end
    end

    def as_json
      run_callbacks :render do
        adapter.as_json
      end
    end
    # Note: So that we can re-use the instrumenter for as_json, to_json, and
    # serializable_hash, we aren't using the usual format, which would be:
    # def render(args)
    #   adapter.as_json
    # end
  end

Source | Google | Stack overflow

Edit

git clone [email protected]:rails-api/active_model_serializers.git

cd active_model_serializers

open lib/active_model_serializers/callbacks.rb

Contribute

# Make a new branch

git checkout -b -your-name--update-docs-ActiveModelSerializers--Callbacks--ClassMethods-around_render-for-pr


# Commit to git

git add lib/active_model_serializers/callbacks.rbgit commit -m "better docs for ActiveModelSerializers::Callbacks::ClassMethods#around_render"


# Open pull request

gem install hub # on a mac you can `brew install hub`

hub fork

git push <your name> -your-name--update-docs-ActiveModelSerializers--Callbacks--ClassMethods-around_render-for-pr

hub pull-request


# Celebrate!