Hello,
I’m experimenting with live view file input and I have problem when I create it in live compoent, I get error
key "phx-FlqDBelz62hhtB9I" not found in: %{"phx-FlqDBcpW_-BhtHal" => :thumbnail, "phx-FlqDBcpWtahhtHaF" => :background}
This error appears when I select file for upload.
My mount function on component
@impl true
def mount(socket) do
socket
|> allow_upload(:picture, accept: ~w(.png), max_file_size: 10_000_000)
|> assign(:changeset, Test.new())
|> (& {:ok, &1}).()
end
Render function
@impl true
def render(assigns) do
~L"""
<div>
<%= f = form_for @changeset,
"#",
id: "#{@myself}-form",
phx_taget: @myself,
phx_change: "validate",
phx_submit: "save" %>
<div class="mt-3">
<%= label f, gettext("Name"), class: "form-label" %>
<%= text_input f, :name, class: "form-control", required: true, maxlength: 200 %>
<%= error_tag f, :name %>
</div>
<%= for entry <- @uploads.picture.entries do %>
<div>
<progress max="100" value="<%= entry.progress %>" />
</div>
<% end %>
<div class="mt-3">
<%= label f, gettext("Pic"), class: "form-label" %>
<%= live_file_input @uploads.picture %>
</div>
<%= submit "Save", class: "btn btn-success" %>
</form>
</div>
"""
end
Validate function
@impl true
def handle_event("validate", _params, socket) do
IO.inspect("validate")
{:noreply, socket}
end
I don’t know if it have any influence, but parrent live view also contains live_file_input
Does any body experienced something similar? How did you solve it?
I will be gratefull for any help.