If you use the default freeradius schema, yes, you can read the database with out modify your scripts. The usual tables (radreply, radcheck, etc..) are available via database views.
It's not possible. As described in the previous section, tables like radreply, radcheck are not real table but views compute for many tables, which make impossible INSERT.
The word type can't be used as column table in a rails application. Since I want to be full compliant with the default freeradius configuration, I use the table devices from RoRadius, and nas is a writable view with differents column names.