【问题标题】:Form Design: How to best display/add different statuses?表单设计:如何最好地显示/添加不同的状态?
【发布时间】:2015-10-09 23:35:30
【问题描述】:

我正在制作一个 Rails 表单。本质上,一个人可以有多种状态并在不同状态之间切换。在数据库表中,显示会简单如下:

status start_date end_date
work   1/1/15     1/10/15
sick   1/11/15    2/15/15
work   2/16/15    3/15/15
sick   1/15/15    1/14/15

我需要提示用户输入这些信息。我制作了一个属于人员类的状态类。所以基本上,这些字段将成为嵌套表单的一部分。 我的问题是:如何动态显示这些信息以使表单优雅且干净易用?

谢谢!

【问题讨论】:

    标签: ruby-on-rails forms


    【解决方案1】:

    如果我了解你的域名,你的Person 有很多Status,对吧?

    最简单的方法是使用gem cocoon。您的视图将如下所示:

    <%= form_for @person do |person_form| %>
      <%= person_form.input :name %>
    
       <%= person_form.fields_for :statuses do |status_form| %>
         <%= status_form.field :start_date, :end_date %>
    
         <!-- cocoon's method to dynamically add nested forms -->
         <%= link_to_add_association 'add status', person_form, :statuses
       <% end %>
    <% end %>
    

    【讨论】:

    • 谢谢!我会玩茧。我已经尝试过茧,但它之前让我失败了……我需要注意什么棘手的部分?我正在努力使用户体验尽可能动态。
    • cocoon 在其主页上有很好的文档。从更简单的形式开始,了解 gem 的工作原理
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-27
    • 2021-03-27
    • 2014-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多