Skip to content

Instantly share code, notes, and snippets.

View romul's full-sized avatar

Roman Smirnov romul

View GitHub Profile
@tanguyantoine
tanguyantoine / foo_type.rb
Created August 19, 2017 18:01
New Relic GraphQL Ruby instrumentation
Types::FoosType = GraphQL::ObjectType.define do
field :foos, !types[Types::FooType] do
timed true # enable New Relic trace_execution_scoped
description "Returns foos"
argument :per, types.Int, default_value: 20
argument :page, types.Int, default_value: 1
# Moving to cursor pagination would be better
resolve(...)
end
end
@jimworm
jimworm / change_validator.rb
Created July 20, 2012 07:51
Enforce/prevent attribute change in Rails 3
class ChangeValidator < ActiveModel::EachValidator
# Enforce/prevent attribute change
#
# Example: Make attribute immutable once saved
# validates :attribute, change: false, on: :update
#
# Example: Force attribute change on every save
# validates :attribute, change: true
def initialize(options)