i haven't been using CRUD directly, and i added this to my form display logic to show computed fields as read-only, and update them on submit:
#make compute fields read-only in the forms
for f in db[request.args[0]]:
if f.compute:
f.writable=False
#include all fields, including compute fields, in the forms
fields = [f.name for f in db[request.args[0]] if (f.writable or
f.readable)]
form = SQLFORM(db[request.args[0]], fields=fields)
cfh

