avo-hq/avo

Add the ability to change the view type of a field

Open

#2,140 创建于 2023年12月18日

在 GitHub 查看
 (4 评论) (0 反应) (0 负责人)Ruby (1,778 star) (308 fork)user submission
Back endDSL-relatedEnhancementHelp wantedTask

描述

From here.

Maybe you must use a computed field on an Edit view. You can fake it like in that comment or you could pass in a computed field with the view set to :show. This will render that field as a show field in the edit view.

Example:

Image

Rough PoC:

        <% if main_panel.present? %>
          <% c.with_body do %>
            <div class="divide-y">
              <% main_panel.items.each_with_index do |field, index| %>
              <% v = field.id == :user_label ? :show : view %>
                <%= render field
                  .hydrate(resource: @resource, model: @resource.model, user: @resource.user, view: view_for(field, forced_view: v))
                  .component_for_view(view_for(field, forced_view: v))
                  .new(field: field, resource: @resource, index: index, form: form, compact: sidebar.present?)
                %>
              <% end %>
            </div>
          <% end %>
        <% end %>

贡献者指南