ruby-on-rails – fields_for中的数组列字段呈现…未呈现
发布时间:2020-12-17 02:05:10 所属栏目:百科 来源:网络整理
导读:数组作为数组保存在db中..此数组中的每个项目都应在fields_for中呈现为text_fields. (在我的带有Postgres DB的Rails 4应用程序中) 没有按预期呈现…请找你的建议. 守则如下: 资源迁移有: t.string :news_outlets,array: true 父帖子的_form.html %= form_f
数组作为数组保存在db中..此数组中的每个项目都应在fields_for中呈现为text_fields. (在我的带有Postgres DB的Rails 4应用程序中)
没有按预期呈现…请找你的建议. 守则如下: 资源迁移有: t.string :news_outlets,array: true 父帖子的_form.html <%= form_for [@post,@post.declare_victory],:html => {} do |f| %> <%= f.hidden_field :post_id,value: @post.id %> <%= f.fields_for :news_outlets do |news_outlet| %> <%= render 'news_outlet_fields',f: news_outlet %> <div> <%= link_to_add_item t('add_news'),news_outlet,'/news_outlet_fields','news_outlets'%> </div> <% end %> <% end %> DeclareVictory中的控制器操作 def create @declare_victory = @post.build_declare_victory declare_victory_params @declare_victory.user = current_user @declare_victory.save redirect_to @post,notice: t('success') end _news_outlet_fields.html部分呈现 <div class="form-group"> <%= f.text_field '',id: 'declare_victory_news_outlets',:class => 'form-control',:placeholder => t('news_outlets.new_news') %> </div> 谢谢 解决方法
text_field需要包含用于批量分配的属性名称.
<%= f.text_field :news_outlets,:placeholder => t('news_outlets.new_news') %> 你拥有它的方式,name属性不会是正确的,因此params不会是正确的,因此质量分配尝试不会从表单中获取新的数据分配. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |