1. create method calls beforeCreate to
trigger events or filter arguments.
2. it runs filterArrayWithColumns method to filter
arguments with column definitions.
3. use currentUserCan method to check permission.
4. get column definitions and run filters, default value
builders, canonicalizer, type constraint checkers to build
a new arguments.
5. use these new arguments to build a SQL query with
SQLBuilder\QueryBuilder.
6. insert SQL into data source (write)
7. reutrn the operation result.