Checking used_input?/1 on inputs_for/1?

In LiveView 1.0 (1.0.0-rc.7), I am using inputs_for/1 to render forms for a nested Ash resource and it’s working great with validation of the fields in the nested resource as well as validation of the attribute with the array of the resources itself.

So, I am able to show the error below the inputs_for/1 component. However, I’m unable to immediately use used_input?/1 in order to delay showing this error until the field of the attribute for the nested resource should be considered used, after submission in this case I would like to think.

Notably, the params do not include any entry for _unused_addresses which would have caused used_input?/1 to work.

  • Is there an “idiomatic” way to handle this?
  • Am I holding it wrong?

The attribute in question

attribute :addresses, {:array, MyApp.MyDomain.PostalAddress},
      allow_nil?: false,
      public?: true

The field in the form

<.inputs_for :let={address_form} field={@form[:addresses]}>

Thank you in advance for any insights :pray:

I believe this is fixed in main of Phoenix live view but not released yet.

1 Like

Thanks Zach but I just checked on main and get the same result.

Maybe you’re referring to this issue?

That fix from Chris fixed used_input?/1 for the fields on the nested resource itself though.

Retracting this last reply and investigating, sorry :slight_smile: