ruby-on-rails - Rails 嵌套表单和 Bootstrap 选项卡

标签 ruby-on-rails twitter-bootstrap nested-forms

我有一个嵌套模型 (exptype),并且我使用 Bootstrap 选项卡来显示父级之间的 has_many 关系 (experiment ) 及其子级 (exptype)。

到目前为止,我的代码如下所示:

 <div role="tabpanel">
      <!-- Nav tabs -->
      <ul class="nav nav-tabs" role="tablist">
        <% @experiment.exptypes.each do |e| %>
          <li role="presentation"><a href="#exptype<%=e.id%>" aria-controls="exptype<%=e.id%>" role="tab" data-toggle="tab"><%=e.get_name%></a></li>
        <% end %>
      </ul>

      <!-- Tab panes -->
      <div class="tab-content">
        <%= f.fields_for :exptypes do |builder| %>
          <div role="tabpanel" class="tab-pane" id="exptype<%=builder.object.id%>">
            <%=builder.object.id%>
          </div>
        <% end %>
      </div>
    </div>

选项卡本身可以工作。但 tab-content 却没有。对于每个选项卡,所有 builder.object.id 都会显示在每个选项卡中,而不是在各自的选项卡中。

我相信是 fields_for 循环导致了问题。但是,我希望能够有一个允许添加新的 exptype 的选项卡。

最佳答案

它应该看起来像:

<div class="tab-content">
  <% @experiment.exptypes.each do |e| %>    
    <div role="tabpanel" class="tab-pane" id="exptype<%=builder.object.id%>">
      <%= f.fields_for :exptypes, e do |builder| %>        
        <%=builder.object.id%>
      <% end %>
    </div>
  <% end %>
</div>

fields_for 不是循环,只会创建一个 div。请注意,我还将 e 添加到 fields_for 调用中。看看这里: http://apidock.com/rails/ActionView/Helpers/FormHelper/fields_for

关于ruby-on-rails - Rails 嵌套表单和 Bootstrap 选项卡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29620013/

相关文章:

ruby-on-rails - rake 分贝 :migrate table already exist

html - 左右两张图片的导航栏,中间有一个搜索框

c# - 在动态 anchor 控件中调用 Bootstrap 函数

angular - 无法读取 null 的属性 'addControl'

ruby-on-rails - Rails - Simple Form Bootstrap - 显示内联错误的全文 -(或任何地方)

ruby-on-rails - rubygems.org 的任何官方镜像?

ruby-on-rails - 验证失败时设计自定义消息

javascript - 如何显示过滤后的所有数据

ruby-on-rails - 带有嵌套资源 : update belongs_to association when creating new has_many 的 Rails 嵌套表单

ruby-on-rails - 索引迁移名称太长