Sorry Weheh, did not recognize you :)
You can not achieve desied effect with lambda for represent because
lambda does not get enough information: try
db.table.name.represent = lambda o: type(o)
and you will see that lambda gets str datatype as parameter, so all
links to SQLRow etc. are lost.
You can use my update_column function, but for entire rows that will
look too ugly and take too many lines of code. I think, this is the
case when it's easier to write your own code to generate table just
like you want. Something like:
rs = db(condition).select()
for row in rs:
current_id = str(
row.id)
table.append(TR(''' add columns ''',
_onclick="javascript:document.location = 'blah/blah' + current_id"))