Same here with latest stable:
Table:
db.define_table('variable',
Field('name', type='string', length=255),
Field('value', type='string', length=255),
format='%(name)s',
primarykey=['name'])
Traceback:
Traceback (most recent call last):
File "/home/haggis/tmp/web2py/gluon/restricted.py", line 205, in restricted
exec ccode in environment
File "/home/haggis/tmp/web2py/applications/test/controllers/appadmin.py"
<http://127.0.0.1:8000/admin/default/edit/ikum/controllers/appadmin.py>, line
412, in <module>
File "/home/haggis/tmp/web2py/gluon/globals.py", line 173, in <lambda>
self._caller = lambda f: f()
File "/home/haggis/tmp/web2py/applications/test/controllers/appadmin.py"
<http://127.0.0.1:8000/admin/default/edit/ikum/controllers/appadmin.py>, line
126, in insert
form = SQLFORM(db[table], ignore_rw=ignore_rw)
File "/home/haggis/tmp/web2py/gluon/sqlhtml.py", line 772, in __init__
self.id_field_name = table._id.name
File "/home/haggis/tmp/web2py/gluon/dal.py", line 6774, in __getattr__
return self[key]
File "/home/haggis/tmp/web2py/gluon/dal.py", line 6714, in __getitem__
return dict.__getitem__(self, str(key))
KeyError: '_id'