Sorting according to a Thing's Thing field

We can sort of list of [Product]s according to their [Category]. However which field of the [Categorie] thing is used for sorting ?

Idea 1 : When selecting [Catagory], be able to select one of its text, date or number field
Or
Idea 2 : Define in the Data settings the primary field used by defaut for sorting

Coming back to this, letting us define “Default sorting Field” would be great. I mean :

  • keeping the default sorting by creation date
  • when a Thing is “sort by” another Thing, use this last defaut sorting field. So in my previous exemple, when I do a search for [Product] defined by [Category], the Category’ s defaut sorting field would be used to sort the products.

You can already do this with Sort by: “Dynamic Field” …then you can pick whatever you want BUT you cant reference the thing you just searched for (dumb), so instead you have to duplicate the search criteria from the main search… then it works. Seems a bit hack-ish, but does the job.

They could add “This thing” as an option to the dynamic sort field, that’d make it less confusing to set up. I think the way you originally suggested would be too big of a change for them to do, but this way should be pretty easy to add (i assume).

Generally, it’d be good if they added the “Advanced” option to ALL dynamic inputs. It’s a super useful feature of the :filtered option, coz it’s so freeing, but doesn’t seem to be available anywhere else. I’d like to see that option at the bottom of literally every dynamic input’s list of options.

5 Likes

very good. thanks for you tapic

Thanks.
What you propose is doable but not data-wize. Sorting this way, loading speef would increased considerably.

1 Like

Well yeah, i suppose doing 2 searches the same would theoretically take twice as long. But actual load time… depends how it handles the searches. Unless the database is huge it should still be pretty fast… and at least a temporary workaround until they can solve properly as below.

Indeed, as i said, the BEST way they could fix it is to add “This Thing” as an option to the dynamic sort field. That would take away the need for the 2nd search and would perfectly solve the problem right? It shouldn’t add any processing time.

Possibly the field chosen in Data > App Data > Primary fields would be used for sorting, sorry too tired to test it right now. Unfortunately it is not changeable at runtime for different sort orders.

I find that if I need to reference an item or list of Data in more than one spot on a single page that it is usually best to create a group or repeating group somewhere on the page that does the search and then you can reference the group instead of performing another search. Make the group or repeating group 1x1 pixels and a clear background to not show up, as I think (can’t quite remember) that it has to be visible on page load to actually do the search

This way the search is performed only once on page load which should help with the speed


Geoff | Wolfer Tech
Creator of The Best Selling Bubble Template
Creator of The Most Used Bubble Template (FREE)

I thought also about it. Primary fields seem use for the “app data” visualisation only.
In the App Data > Data, a defaut sorting field would be best. But in my app, the sorting field’s field can be different from one page to another.

Adding to this discussion, I’m wondering if it is possible to sort on a Thing’s Thing dynamically.

I put the field name in a custom state that I use to sort dynamically. This works perfectly, but only ‘1 level’ deep. If I want to reference a Thing on the Thing I reference in the RG, the sort doesn’t work. With one data type I just added another two fields with a copy of the referenced Thing’s data as text to help sort the RG but with others this won’t be that easy and it also kind of beats the point of having data across multiple data types.

How does the dynamic field sort work? It takes the name of the field but what if it is not /name but /Thing/name ?

2 Likes

Hello @Bubble Any updates on @vincent56 comment above? Maybe this can be a quick win!

This is unfortunately not a quick win.

Hahaha. No prob :rofl:

What about it in 2020?

3 Likes

Bump - I need this functionality too. The ability to sort a repeating group on a thing’s thing would be super helpful.

The use case: I want my users to be able to sort their tables based on the data in related things of the thing the table consists of. At the moment, they can sort on the fields in the table that are direct fields in the thing, but not linked things.
eg. A PurchaseOrder (thing A) has a Vendor (thing B), and I want to sort the table based on the name of the Vendor. I am not going to put a Vendor name as a text field on the purchase order, as it’s redundant and already stored in the linked Vendor thing.

6 Likes

in the meantime try with nested repeaters

You can achieve this today.

List Sifter’s SORT action does this.

  • Put List Shifter on page
  • Set its “List to Shift” as the list you need to sort.
  • Fire the SORT List Action at it. For “Source Sort List”, just compose the Thing’s Thing’s field.
  • List Shifter’s “Shifted List” output now contains the sorted version of the list.

Example:

Here’s an explorer page demonstrating this basic use of SORT in List Shifter:

https://list-shifter-demo.bubbleapps.io/version-test/mapped-sort-basic?debug_mode=true

And here’s the editor.

7 Likes

Thanks for the suggestions - I’m currently using DragTablePlus plugin to neatly present the tables and will see how to integrate these suggestions with the plugin

Sigh.

1 Like