Comments (4)
Perhaps this is covered in "Streamlined control flow and clearer abstractions", but I'd like to see some changes to the grid internals, in order to improve testing.
Right now, the grid knows about the column, but the column also knows about the grid, to the point where the columns won't work without the grid. This means that you can't test the columns in isolation.
I'd prefer the grid knows about the columns, and when rendering happens the grid passes down whatever details the column needs to know in order to properly render its data. This then permits tests against individual columns, rather than needing to bootstrap and test an entire grid as a whole.
from webgrid.
Mobile responsive. See #84 for possible implementations.
from webgrid.
This may or may not be an issue, but it's probably something to note: pagination does not reset when filters change on a webgrid. Here's an example to show the potential problem with that:
Reviewing time records as an admin in Finitude, I'm going through two pages of records filtered by the Evolve client. When I finish reviewing them (on the second and last page), I switch my filter to the Level 12 client (for which there are 4 pages of records). When I do this, the way webgrid works, I start on the second page. If I'm not paying attention, I could miss reviewing the entire first page of the Level 12 records.
-- Me
There's an argument to be made for a change, but the UI is kind of in the way of that - you add a filter and submit, but the page fields still have the other page selected. So the user is getting exactly what is "asked" for, even though it's not necessarily helpful.
-- Matt
from webgrid.
This may or may not be an issue, but it's probably something to note: pagination does not reset when filters change on a webgrid.
Adding one more voice to the conversation, one of our clients opened a support ticket because they couldn't figure out why they were seeing strange results on one of their grids.
It also results in inconsistent behavior in some situations. If you are on page 6, then filter to where there are only 4 pages of results you go to page 4; but then if you clear the filter you just added (going to your original search) you end up on page 4 instead of where you started on page 6. So even if you learn this behavior you can't integrate it into your workflow because it's unreliable.
IMO pagination should be independent of the rest of the filters and should reset to page 1 on every filter change.
from webgrid.
Related Issues (20)
- json should include totals rows
- Improve filter constructor for better dev UX
- Add xlsx methods to testing helper GridBase
- Improve argument loader docs HOT 2
- Clarify intent of GridBase.test_search_expr_passes
- Better example app
- CI builds are broken HOT 1
- improve query string generation
- rendered JSON type can be wrong for aggregate HOT 2
- datetime filter control helper is too generic HOT 1
- Support different paging method
- Add DateFilter options for "last week", "in past", "in future"
- Prepare for SQLAlchemy 2.0 HOT 1
- Update Column.has_subtotals documentation HOT 1
- Openpyxl type annotations undefined when openpyxl not installed
- smarter filter operators
- FormEncode is breaking HOT 1
- Extremely narrow dropdown for filter operation HOT 1
- Werkzeug 3.0.0 import error HOT 1
- Query args not applied when using get_pyq
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from webgrid.