Hi Ali,
I just checked the behavior with the new dbadmin.
Things work fine for me.
Notes:
1)
dbadmin is indeed the database administration section of the dashboard app.
2)
In the dbadmin, the table is shown as a form. So the interests field is shown as a selectbox, making it impossible to manually insert it as [1,2] or [2,1] here.
Check if you have the latest version of the dashboard app.
3)
Also the issue 2 that you described did not give any issue for me.
I inserted a new record via the command line:
>>> db.test_five.insert(name="Adam")
2
>>> db.commit()
>>> db.test_five[2]
<Row {'id': 2, 'name': 'Adam', 'emails': None}>
The I successfully changed the name "Adam" to "Adams" via dbadmin
And I checked again the value on the commandline
>>> db.test_five[2]
<Row {'id': 2, 'name': 'Adams', 'emails': []}>
Note that the value None was changed to [] after the update.
4)
Note that the requires=.... validators are enforced at the form level, not at the database level.