Liveview heex template variable scope errror

I have a problem with variable scopes in a heex template (phoenix 1.7 rc1)

#<%= inspect @record.view_item_id %>#
<label><%= gettext("Column") %>:</label>
<select name="view_item_idasdfdf_dadf" class="">
  <%= for item <- @columns do %>
    <option value={item.id}>
      <%= item.label.nl %>#<%= @record.view_item_id %>#
    </option>
  <% end %>
</select>

The assigns in the select element don’t work, resulting html output:

<div class="form-group">
  #"5503d42e64657647e0000000"#
  <label>Column:</label>
  <select name="view_item_idasdfdf_dadf" class="">
    
    <option value="5503d42e64657647e0000000" selected="">Klant##</option>
    
    <option value="5503c2c064657637f4010000">Soort##</option>
    
    <option value="55efd0cc0c08dc13b3000000">Kenmerk##</option>
    
    <option value="5503c2e464657637f4050000">Omschrijving##</option>
    
    <option value="588c69a20c08dc7676000000">Serienummer##</option>
    
    <option value="56115aa20c08dc27f1000000">Status##</option>
    
  </select>

</div>

Anyone an idea ?

How are you assigning the @record variable in your LV code ? what does inpect show ?

the inspect shows a bson object id, i think it should not matter how the assign is.

In the same template the result of the same variable is differtent:

5503d42e64657647e0000000 and nothing

How can that be

Made the following test:

`

        <select name="view_item_id" class="">
        <%= for item <- @columns do %>
           <option value={item.id}><%= item.label.nl %>#<%= @record.view_item_id %>#</option>
        <% end %>
        </select>


        <select name="view_item_id" class="">
        <%= for item <- @columns do %>
           <option value={item.id}><%= item.label.nl %>#<%= @record.view_item_id %>#</option>
        <% end %>
        </select>

        <select name="view_item_id" class="">
        <%= for item <- @columns do %>
           <option value={item.id}><%= item.label.nl %>#<%= @record.view_item_id %>#</option>
        <% end %>
        </select>

`

this results in the following render:

Link to screenshot

The first is wrong the second and third are fine.
How can this be ?

Fixed, it was in a .modal component and the first select get’s the focus so won’t change …