For site persistant data, is it customary to put it in a database table with one large record?
There are some statistical things I'd like to keep track of on the site. Is it standard practice to define one data table that has one large record containing the information?, for instance: Number visitors since inception emails sent uploaded bytes stored ... You don't want to pump through all your data base data for these numbers, so it's probably more efficient to just keep them in a file. Is it normal to do this with a database table called something like site_stats (or maybe app_stats, to stay in the application's space), and simply do update_record with the changed field? This is what I did: ---- in models/sitedb.py ----- db.define_table('app_stats', Field('visitors', type='integer'), Field('emails_sent', type='integer', default=0) ) ---------------------------------- and in my controller I had (I left in the first misfire and comment as a future warning to others....): -------------------------------------- # stat_rec = db().select(db.app_stats.visitors).last() # the above line generates a KeyError for stat_rec.update_record # the line below worked fine stat_rec = db(db.app_stats).select().last() if stat_rec: stat_rec.update_record(visitors = stat_rec.visitors + 1) else: stat_rec = db.app_stats(db.app_stats.insert(visitors=1)) db.commit() ------------------------------------------------- Are there other ways people save this kind of data?