text: Title: Custom columns?
  Body: ### Checklist
  
  - [x] There are no similar issues or pull requests for this yet.
  
  ### Is your feature related to a problem? Please describe.
  
  In the admin interface, I want to have extra table columns in addition to model properties. For example, if there is a User model in relationship with UserGroups, I want to have each User row with the number of groups in addition to the groups.
  
  Like this:
  
  |id|groups|group count|
  |-|-|-|
  |123|(A) (B)|2|
  
  ### Describe the solution you would like.
  
  We can keep the current API but extend `column_list` and `column_formatters`:
  
  ```python
  class UserAdmin(ModelView, model=User):
      column_list = [User.name, User.groups, 'group_count']
      column_formatters = {'group_count': lambda m, a: len(User.groups)}
  ```
  
  ### Describe alternatives you considered
  
  - Format model properties which are not in use (not always possible)
  - Add the needed info to the existing columns (not convenient to use such tables)
  
  Also, in terms of my example, if I want to show only the number of groups but not the list, I can only format the `groups` column to have the groups loaded by sqladmin. This means putting a single value in a relation column, so sqladmin adds unwanted links and brackets:
  ![image](https://github.com/aminalaee/sqladmin/assets/38432588/3b43b7a2-5b8c-45fc-b384-2a5153fc164d)
  
  
  ### Additional context
  
  Brilliant project! Thank you.