gpt4 book ai didi

javascript - 部分表格未显示问题

转载 作者:行者123 更新时间:2023-12-03 12:24:57 24 4
gpt4 key购买 nike

我有一个 Rails 4 应用程序,我基本上在关注 this railscast :

_form.html.erb:

<%= form_for @store, do |f| %>

<%= f.fields_for :products do |builder| %>
<%= render "product_fields", f: builder %>
<% end %>
<%= link_to_add_fields "Add Product", f, :products %>
<% end %>

_product_fields.html.erb

<%= f.select :the_product_type, %w[Shelves, Tools, Wires]%>
<div>
<%= f.fields_for :product_fields do |builder| %>
<%= builder.text_area :name_of_product_field %>
<% end %>
</div>

我的 JS 看起来像:

$('form').on('click', '.add_fields', function(e) {
var regexp, time;
time = new Date().getTime();
regexp = new RegExp($(this).data('id'), 'g');
$(this).before($(this).data('fields').replace(regexp, time));

return e.preventDefault();
});

我的问题是,当我单击“添加产品”按钮时,我只能看到一个选择。我看不到 name_of_product_field 文本区域。但我不明白如果我看不到文本区域,为什么我可以看到选择?

最佳答案

product_fields 是一个嵌套属性,您没有在代码中的任何位置构建,这就是您看不到它的原因。

假设一个产品有_很多产品字段,您可以通过两种方式解决此问题,选择适合您的一种:

<强>1。在 Controller 级别构建它

在呈现有问题的 View 的 Controller#action 中构建 product_fields:

def action_name
@store = Store.new
product = @store.products.build
product.product_fields.build
end

2.在 View 级别构建

更新 _product_fields.html.erb 中的 fields_for,如下所示:

<%= f.fields_for :product_fields, f.object.product_fields.build do |builder| %>

关于javascript - 部分表格未显示问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24253234/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com