I think I\'m trying to get the PHP equivalent of print_r() (print human-readable); at present the raw output is:
ActiveRecord::Relation:0x10355d
inspect is great but sometimes not good enough. E.g. BigDecimal prints like this: #.
To have full control over what's printed you could redefine to_s or inspect methods. Or create your own one to not confuse future devs too much.
class Something < ApplicationRecord
def to_s
attributes.map{ |k, v| { k => v.to_s } }.inject(:merge)
end
end
This will apply a method (i.e. to_s) to all attributes. This example will get rid of the ugly BigDecimals.
You can also redefine a handful of attributes only:
def to_s
attributes.merge({ my_attribute: my_attribute.to_s })
end
You can also create a mix of the two or somehow add associations.