Okay, I had a legacy table that had no versioning. I added Acts As Versioned, by adding the "version" column to said database, and adding the acts_as_versioned to the model. When I tried to "save()" a record, I got an "uninitialized constant ActiveRecord::Table::Version" The field existed in the database, and the table_versions table was there. When I used "save_without_revision()", the record saved without a problem. Any clue on what I need to do to fix this?
on 2008-12-08 03:25
on 2008-12-08 14:54
aav also requires an xxx_versions table (e.g., foo_versions if you're versioning foos). Check the documentation; there's a class-level method added to models that acts_as_versioned that will create the version table for you if you add it to a migration.
on 2008-12-15 04:30
Sorry for the delay answering. There is a xxx_versions table. Crud. I think I see the problem. This is a legacy db, which has a table named 'bases,' which is a naughty table name. The singular is 'basis,' which I can't inflect because it's a (kinda) reserved name. So, I guess I can magically rename the table "basis_versions" and fix it. I'll give it a whirl.