text: Title: Pagination not taking the search query into account
  Body: ### Checklist
  
  - [X] The bug is reproducible against the latest release or `master`.
  - [X] There are no similar issues or pull requests to fix it yet.
  
  ### Describe the bug
  
  When on a list page, if you preform a search query, the number of results and pages does not change according to the actual results returned by the query.
  
  ### Steps to reproduce the bug
  
  1. Open a list page
  2. Search for something that narrows down results
  
  ### Expected behavior
  
  The result count at the bottom of the page and the number of pages should change to reflect the new results.
  
  ### Actual behavior
  
  The result count never changes, and the number of pages stays the same, allowing the user to change pages. Once a user changes to a page outside the range of results, an empty page is shown.
  
  ### Debugging material
  
  Here is an example, of a query that returns only 4 results, but the page still lists 15.
  
  <img width="943" alt="Screenshot 2023-05-25 at 11 17 53" src="https://github.com/aminalaee/sqladmin/assets/44203439/eb662d13-cc07-4726-9448-bbcb73268437">
  
  
  ### Environment
  
  - macOS 12.3 / Python 3.9.14 / 0.11.0
  
  ### Additional context
  
  The bug is happening because the `ModelView.count()` method takes the whole collection into account instead of taking the search query statement as a parameter. Making the `ModelView.count_query` attribute a method that takes the statement returned by `ModelView.search_query()` as a parameter could be a way to fix this bug.