我在窗体上使用materialize-sass宝石。使用自动完成功能获取供应商名称。表单上的其他字段是项目名称和数量,它们是嵌套资源。对此,我正在使用cocoon宝石使用自动完成和茧宝石嵌套资源的轨道物化插件形式
由于某种原因,第一次加载页面时,所有工作似乎都正常。但添加更多的字段似乎并没有工作。我尝试使用下拉选择,并没有显示项目列表。我将其替换为另一个自动完成功能,并且主字段显示但是自动完成功能不起作用。任何想法可能是错的?
请参阅下面的代码。
purchase_orders _forms.html.erb
<div class="col s12">
\t <%= simple_form_for(@purchase_order) do |f| %>
\t <%= f.error_notification %>
\t <div class="row">
\t \t <div class="col s6">
\t \t \t <%= f.input :vendor_name, input_html: { class: 'vendor_name autocomplete' } %>
\t \t </div>
\t </div>
\t <section class="show-section">
\t \t <div class="row">
\t \t \t <div class="col l12"><h4>Item List</h4></div>
\t \t \t <div class="col s12">
\t \t \t \t <%= f.simple_fields_for :purchase_order_details do |purchase_order_detail| %>
\t \t \t \t <%= render 'purchase_order_detail_fields', :f => purchase_order_detail %>
\t \t \t \t <div class="links">
\t \t \t \t \t <%= link_to_add_association 'Add More', f, :purchase_order_details %>
\t \t \t \t </div>
\t \t \t \t <% end %>
\t \t \t </div>
\t \t </div>
\t </section>
\t <%= f.button :submit %>
\t <% end %>
</div>
_purchase_order_detail_fields.html.erb
<div class="nested-fields">
\t <div class="row">
\t \t <div class="col l6">
\t \t \t <%#= f.input(:item_id, collection: Ingredient.is_active, label_method: :title, value_method: :id) %>
\t \t \t <%= f.input :item_name, input_html: { class: 'item_name autocomplete' } %>
\t \t </div>
\t \t <div class="col l5">
\t \t \t <%= f.input :item_quantity %>
\t \t </div>
\t \t <div class="col l1">
\t \t \t <%= link_to_remove_association "delete", f, :class => "material-icons teal-text text-lighten-1" %>
\t \t </div>
\t \t <%#= f.hidden_field :item_type , :value=> params[:category_id] %>
\t </div>
</div>
我也试过咖啡脚本使用回调重新初始化materializeForm,但似乎没有工作。 –
经过进一步调查,回调是解决问题的方法。我会将答案作为我使用的咖啡脚本发布。 –