Stale Form state within ListView

I'm making a dashboard to manage some Postgres tables. The main table has a one-to-many relationship with a child table. I have a ListView component displaying a Form for each item in the child table.

My issue is that the forms are only displaying data from the initial time they are rendered, not dynamically updating when the child query is executed. The number of forms changes appropriately, just not the contents. What is strange is that when hovering over the query for Data source for the form, it shows what the expected, correct data would be. Its just the displayed state is stale.

In the ListView, Number of items is {{ formatDataAsArray( }} and Item keys is {{ }}. The form Data source is {{ formatDataAsArray([i] }}. Inspecting the application state, I can see the instances of the form are still reflecting their initial state, not updating as the childQuery results change.

Screenshot of the initial state, showing the ListView configuration:

After selecting a different item in left column, middle shows updated data for parentQuery and the childQuery updates appropriately. Just the Form within the ListView is still showing data from the original state.

If it helps, I'm running Retool on prem version 3.4.3.


I reworked the ListView to instead have text + a button for each entry, that when clicked populates a modal. The text component gets the correct data just fine. Definitely a bug with the Form source data not being reactive/not re-rendering correctly.

Hi @Jon_Miller! Thanks for reaching out and sharing all of these details :disappointed: We've shared this feedback with our team as a bug. I'm not sure when we'll have the fix yet, but I'll post here when we do.

If it helps, we noticed that if you remove the logic for the item keys, the form updates

Dear Tess,

I'm having this same problem. It is very frustrating because I want to clear all forms with a button and there is no way to iterate in all forms inside the listView. There is no way to access each form. At least none that I can found. I have an app in stand by because of this :frowning:

Do you have a status on this issue??

No update to share yet, unfortunately :disappointed: I'm adding your +1 to the internal ticket where we're tracking feedback