代码之家  ›  专栏  ›  技术社区  ›  Cannon Moyer

在块内呈现HTML-Ruby on Rails

  •  0
  • Cannon Moyer  · 技术社区  · 7 年前

    我正在尝试呈现一个包含块内部分内容的HTML,但唯一呈现的是最后4个结束 </div> 元素。

    这是我的代码:

    <%= new_item_modal do |i| %>
    <div class="modal fade" id="newItemModal" tabindex="-1" role="dialog" aria-labelledby="newItemModal" aria-hidden="true">
      <div class="modal-dialog" role="document">
        <div class="modal-content">
          <div class="modal-header">
            <h5 class="modal-title">New Item</h5>
            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
              <span aria-hidden="true">&times;</span>
            </button>
          </div>
          <div class="modal-body" id="new-item" style="overflow:scroll;height:500px;">
            <%= render partial: "/items/form", locals: { remote: true, item: @item, categories: @categories }%>
          </div>
        </div>
      </div>
    </div>
    <% end %>
    

    还有我的 new_item_modal 功能:

    def new_item_modal(&block)
       if current_location.present? && can_access("create", "items")
          @item = Item.new
          @categories = current_location.categories
          block.call
       end  
    end
    
    1 回复  |  直到 7 年前
        1
  •  0
  •   Mateo Ochoa    7 年前

    你的第一行应该是 <%= new_item_modal do |item, categories| %> 还有你的 new_modal_item 方法应该具有 block.call(@item, @categories) .确保重命名传递给分部的变量(例如,从 @item item )。

    推荐文章