First of all, CRUD is the hell of a productivity tool. Some findings:

1. Definiton of the archive table like given in the book:

db.define_table('mytable_arcvhive',
   Field('current_record',db.mytable),
   db.mytable)

breaks deletion of records in db.mytable. The foreign key constraint
in db.mytable_archive prevents a deletion. Untested workaround
proposal:

db.define_table('mytable_arcvhive',
   Field('current_record', integer),
   db.mytable)

2. Any unique constraint on db.mytable breaks archiving on modifying
the record without changing the unique constraint column. Unique
constraints have to be manually removed from db.mytable_archive
currently. Any plans to automate?

3. In the documentation the archive table is defined like

db.define_table('mytable_history',
   Field('current_record',db.mytable),
   db.mytable)

while in the current version it is defined like

db.define_table('mytable_arcvhive',
   Field('current_record',db.mytable),
   db.mytable)

Just a typo correction needed in the documentation.

Regards, Andreas
balo...@gmail.com

Reply via email to