Comments (12)
Hi! Thx and congrat for being the first person to open a ticket besides myself!
Yes I suppose I will need a filter widget at some point. Will be an extension for sure and it'll be able to listen directly to the collection events and tell the filtered rows to disappear. You will probably be able to attach as many of them on each grid as you want. Right?
But I'm going to shelf this for the next version. I've been working on this first version long enough I really need to get a release out. BTW, if you have a clone, I plan to do some major refactoring for Backbone 0.9.9 and then some major squashing on master... don't say I didn't tell you :)
from backgrid.
Yeah, sounds good.
Keep up the good work!
/Stefan
from backgrid.
+1 to this. Looks great, but a filtering system would make it awesome.
from backgrid.
I've started working on this. Any concreate ideas what you guys want with this? Will a naive prefix search on predefined fields good enough? Search on the server and rerender afterwards? Any awesome algorithm dudes out there that can help me implement a Levenshtein distance search box purely on the client-side?
from backgrid.
First of all, I think need to do search on the server and rerender afterwards. For this issue also need some specifications about data that will be send to the server. For instance, http://www.trirand.com/jqgridwiki/doku.php?id=wiki:advanced_searching#options. I also think about writing the bundle for Symfony2 to realize the search on the server. For instance, using by Doctrine2 and QueryBuilder and maybe some logic to easy configurate grids from the server-side.
from backgrid.
I agree with @IgorTimoshenko with using the jqgrid filters spec for sending server-side filter requests. Just make sure the UI is as simple as possible. Something like a collapsible filter box for each field would be good enough, and maybe the ability to add a fulltext search on the data (that would hit the server too). The jqgrid filters are too complicated.
In terms of client-side architecture you would want to create a Filter class and that decorates the grid with the filters (ie Decorator design pattern).
Thanks!!
from backgrid.
Ok. I think for the first version of a filter I'll do the following:
- Separate search box with no connection to the grid, no excel style filter. The only connection the filter has with the grid is they are sharing the same collection.
- There will be a well-defined way to turn the stuff inside the search box to queries sent to the server.
- No client-side filtering.
Things that you guys can help me decide:
- Which query engine to use? There are a number of query engines/plugins for Backbone out there.
- Yes or no for autocomplete? Probably leverage bootstrap-typeahead?
from backgrid.
I am not sure that autocomplete needed for the first version.
from backgrid.
I agree with @IgorTimoshenko
from backgrid.
Hi! Any update here?
from backgrid.
+1, I like the idea of keeping the Search box separate from grid. Will this search queryParams be used along with BackGrid queryParams?
from backgrid.
Hi guys, ServerSideFilter and ClientSideFilter are now in the branch. ServerSideFilter performs your boring send-a-request-to-the-server type of searching. ClientSideFilter integrates with lunrjs to do client-side full-text searching. It's more suitable for a grid with a small number of records.
Please try them out and let me know if there are any problems.
from backgrid.
Related Issues (20)
- use Backgrid.UriCell but backbone router not work
- How to prevent multi-row selection? HOT 3
- Initial collection fetch causes table rows to double render HOT 1
- Export to excel + csv
- SelectCellEditor doesn't trigger an edited event in its model
- i want to compare inside cell render model attribute with one object which is out side.
- Backgrid Pagination infinite mode
- Can't use a cell instance as a Column's 'cell' attribute
- API docs site is down HOT 4
- ClientSideFilter .shadowCollection instance doesn't stopListening() on view.remove()
- Column header cell's become buttons HOT 2
- Question: Please help me understand how to correctly include an extension?
- Question: removing grid lines
- Conditional Cell Processing
- Module not found: Error: Can't resolve 'backgrid/lib/backgrid.css'
- Errors in the filter documentation
- [Feature Request] Expose comparator per column. sortValue does not work for special cases.
- Null pointer reference when
- Is there any way to filter out few entries and show them?. I want to show table records based on user, user is one of the key value pair in model. HOT 1
- Supporting child rows
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 backgrid.