ok actually I thought I have sovled my problem with writing None values to the database with this:
>>> IS_IN_SET({None :'unknown', 'option_1:'Option 1'}, zero = None) in stead of: >>> IS_IN_SET(['unknown', 'option_1'], zero = None) but you are right, this only works when I use curd.create the first time. If I try to edit my record with crud.update later, the mapping does not work and the options widget selects a arbitrary value from the dictionary (in case of crud.create, too). But I'd like to have the 'unknown' label in case of None value in database. You think setting the default value to the field? db.mytable.myfield.default = defaultvalue does actually only work with string widget, options widget shows no response. thanks so far