chrisdel101
In LiveView how can I pass my data back to the controller? Non-liveview like Route.path_helper(conn, :new, user: @user, employee: @employee). I need the same map or keyword list as shown.
This is my latest iteration. I need those user and employee fields attached to each form, so I can’t just use html. Where can I put such a list of values here?
<.form let={_f} for={:alert} phx-submit={:alert} #user: @user, employee: @employee>
<%= submit "Alert1", class: "btn btn-primary" %>
</.form>
Then in the controller. I need value to be a map (or whatever)
def handle_event("alert", value, socket) do
IO.inspect(value) => {} # is currently an empty map. Only the first arg is correct.
I’ve asked on this question use form_for in liveview component without model or changeset. And this is similar to this too live_component inside of a form_for
Trending in Questions
I’m working on a project that simulates the bumbl example in the programming phoenix book. It acts almost like an email client. We have a...
New
Hello,
I know there is an approach for handling lists that allows for optimized traversal, but I can’t recall the specific method (somet...
New
Hi everyone,
I am toying with the idea of building a “match maker” for giving personal help to people that wants to start coding.
I sta...
New
Documentation
While reading the Scoped Routes section, I noticed that the documentation currently refers to a problem without explainin...
New
So my question is quite simple and i have found no conclusive answer on forum, google or AI.
Should we use :erlang.float for Integer to ...
New
I recently noticed that Elixir’s Logger defaults its primary log level to :debug when no :logger, :level application configuration is pre...
New
I’m new to elixir and just tried to install the elixirLS extension for VScode(ium) and it is throwing some errors that I would like help ...
New
Other Trending Topics
Edit: 2026 May 15 - This post is archived.
Mob is alive!!
Main docs: mob v0.7.11 — Documentation
A bit of explanation for the slightly c...
New
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
I am happy to introduce the very α version of the new programming language compiled to BEAM.
Welcome Cure.
It has literally three kille...
New
Hi there! We created Gust: A task orchestrator inspired by Airflow.
For those who have never heard about Aiflow, it’s a Python-based wor...
New
Hi everyone!
The first release candidate for the Expert language server project is now available!
We’ve published a press release detai...
New
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #discussion
- #code-sync
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #ai
- #elixirconf-us
- #blog-post
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #api
- #forms
- #elixirconf-eu
- #metaprogramming
- #hex










Showing Posts 1 to 6- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
LostKobrakai
You can put the additional values in a hidden input on the form for them to be submitted with the rest of the forms data.
chrisdel101
Is that the orthodox way to do it?
Can U give an example? I can’t get it to work.
Give the error
no function clause matching in Phoenix.HTML.Form.generic_input/4codeanpeace
I’d suggest generating the hidden input via a
Phoenix.Componentrather than viaPhoenix.HTML.Formassuming you’re running a recent version of LiveView.Something like the above assuming you’ve set up the Phoenix.Component.form/1 properly.
Also, sending these ids via the form may be unnecessary if that information is already stored in your LiveView socket which is accessible in your event handlers e.g.
def handle_event("alert", value, socket), do: ... end.imkleats
Unless your use-case is more complex than the example with other non-hidden inputs, it sounds like you might be better off using a
phx-clickbinding instead of a form.chrisdel101
Thanks everyone for the ideas!
Main problem solved:
I was missing alot of knowledge. Now I see the problem was the
fielddidn’t work as I thought, i.e. automatically. I ended up just going with html after all, since yes, the rest of the details are still on the socket.Secondary problem: Re: the input component:
I didn’t know I needed to implement
<.input/>myself. I’ve tried using the example here but I getundefined function attr/2. Phoenix 1.6 I think.So I’m trying this, but I don’t know where it goes. In it’s own file? How do I use it? Since there is no render.
codeanpeace
These two are connected! On more recent versions of Phoenix, a
core_components.exfile that implements<.input/>gets generated when creating a new app viamix phx.new my_app. That implementation uses pattern matching to automatically derive and add a:nameand:valueassign based on the:fieldassign. So if you want to use<.input/>, you’ll either need to manually add this file/function or implement it yourself.https://github.com/phoenixframework/phoenix/blob/6095fb3aac9b37baa043374a0766680ab5d93a04/installer/templates/phx_web/components/core_components.ex#L277-L284
It can be a bit confusing at first, especially since the LiveView library includes a standard default
.formcomponent, but doesn’t include a standard default.inputcomponent. That’s why the autogeneratedcore_components.exfile includes a.simple_formcomponent that wraps the standard.formcomponent as well as an.inputcomponent.