compatibility with non active record objects