Вы можете попробовать это так:
Создайте хэш со всеми переменными экземпляра как пары ключ-значение, а затем сравните хэши:
Предположим, у вас есть два объекта a и b:
hash_a = a.instance_variables.inject({}){|res,v| res[v] = a.instance_variable_get(v); res }
hash_b = b.instance_variables.inject({}){|res,v| res[v] = b.instance_variable_get(v); res }
if hash_a == hash_b
puts "equal"
else
puts "not equal"
end
Редактировать
Если вы говорите о Rails Models, то вам нужно это:
if a.attributes == b.attributes
puts "equal"
end