Hi all,
I am stuck on this for weeks now and I cannot find my error. I am trying out uploading the images from Chapter 5 of the 'Programming Phoenix LiveView’.
I have tries the syntax in the book
<%= for image ← @uploads.image.entries do %>
<.live_img_preview entry={image} width=“60” />
<% end %>
as well as in the help
<.live_img_preview :for={entry ← @uploads.image.entries} entry=“{entry}” width=“60” />
but I always get the error
(FunctionClauseError) no function clause matching in Phoenix.Component.“live_img_preview (overridable 1)”/1
(phoenix_live_view 1.1.13) lib/phoenix_component.ex:3382: Phoenix.Component.“live_img_preview (overridable 1)”(%{entry: “{entry}”, id: nil, rest: %{width: “60”}, changed: nil, given: %{entry: “{entry}”, changed: nil}})
(phoenix_live_view 1.1.13) lib/phoenix_live_view/tag_engine.ex:109: Phoenix.LiveView.TagEngine.component/3
Code is double and triple checked and contains
def update(%{product: product} = assigns, socket) do
changeset = Catalog.change_product(product)
{:ok,
socket
|> assign(assigns)
|> assign_form(changeset)
|> allow_upload(:image,
accept: ~w(.jpg .jpeg .png),
max_entries: 1,
max_file_size: 9_000_000,
auto_upload: true
)}
end
What can be wrong?