View Components - edgecases
In production code
<%= form_with(model: User.new(first_name: "Viktoria"), url: "/") do |form| %> <%= render(App::RadioButtonGroupComponent.new(form: form, name: :first_name, title: "Title")) do |comp| comp.with_radio_button value: "Nikol" comp.with_radio_button value: "Viktoria" comp.with_radio_button value: "Zdenka" end %> <% end %>
works 👍
----
This works 👍:
----
This works 👍:
<%= render(Gen::ActionPanelComponent.new(title: "Would you like to add a trackable coupon?")) do |comp| %> <% comp.with_body do %> <%= form_with(model: SpendLimitation.new(enabled: false, interval: "daily"), url: "/") do |form| %> <%= render(App::RadioButtonComponent.new(form: form, name: :enabled, value: false, label: "Disable")) %> <div class="separator"></div> <%= render(App::RadioButtonComponent.new(form: form, name: :enabled, value: true, label: "Enable")) %> <% end %> <% end %> <% end %>
This doesnt work 👎 :
<%= render(Gen::ActionPanelComponent.new(title: "Would you like to add a trackable coupon?")) do |comp| %> <% comp.with_body do form_with(model: SpendLimitation.new(enabled: false, interval: "daily"), url: "/") do |form| render(App::RadioButtonComponent.new(form: form, name: :enabled, value: false, label: "Disable")) render(App::RadioButtonComponent.new(form: form, name: :enabled, value: true, label: "Enable")) end end %> <% end %>