Set those and the New and Edit buttons open the form in a popup, submit through the normal flow, and drop you back on the list. Edit came first (#919), then create (#925). Getting the create modal right meant fixing a few things: missing CSS/JS when a submit came back with validation errors, the Bootstrap 3 backdrop showing through, and translations for the modal header.
I also added a read-only details view and moved the modal markup into its own templates so the create, edit, and details modals could share it (#942), and wired the same modals into FileAdmin (#933).
Looking at “SHOW PROCESSLIST” and it looks like your queries are running individually instead of in batches like you sent?
This happens because MySQL runs each update statement individually, but you should still be able to see the batches when the queries are in the “init” state.
Flask-Admin’s search box only worked on text columns. I had a ModelView showing usernames next to a related number, and to find a row by that number you had to set up a filter instead of just typing it into the search box.
So I loosened the search to accept non-text SQLAlchemy columns too (integers, dates, and so on), using ILIKE, which casts and matches across those types (#795). I added tests for searching integer columns on SQLite and MySQL, across SQLAlchemy 0.7 and 0.9.8.
classUserView(ModelView):column_searchable_list=['username','account_number']# account_number is an integer