You are trying to overwrite the 'id' field, but this will give you issues. An activerecord object knows it's own primary key (i'd assume the id-field), and uses it for all sorts of stuff. If you try to select something else into that field, this will not work.
For instance, you get the object with id 1. This is renamed to #1
by you. now AR thinks it is an object with a primary key that is #1
. Which is not true
Bottomline is, you should not put something else in the id
field if you want to work with an actual activerecord object.
What you might want to do is just get the data, but on returning the $object->id
field, you can add the #
. For instance, make a magic getter for id (I believe AR allows you to name this getId(), but otherwise, fix it in __get()
.