ruby-on-rails - fields_for 中的数组列字段呈现...未呈现

标签 ruby-on-rails arrays postgresql ruby-on-rails-4

一个数组文件保存在数据库中作为数组..这个数组中的每个项目都应该在 fields_for 中呈现为 text_fields。 (在我的带有 Postgres 数据库的 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 中的 Controller 操作

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, :class => 'form-control', :placeholder => t('news_outlets.new_news') %>

按照您的方式,name 属性不正确,因此参数不正确,因此批量分配尝试不会在新分配来自表单的数据。

关于ruby-on-rails - fields_for 中的数组列字段呈现...未呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18538184/

相关文章:

javascript - 横幅旋转图像。单击时每个图像都会发送到不同的 URL(vanilla javascript)

arrays - 从动态字符串数组中删除特定索引处的项目

sql - 消除多个条件并减少到一个(没有 OR 语句)

sql - 如何按日期创建 SQL 多次计数计数查询?

ruby-on-rails - HTTPS 在 Chrome 上显示,但在 Safari 上不显示

ruby-on-rails - rails_helper.rb 文件在哪里?

ruby-on-rails - 有没有一种方法可以生成没有 View 的 rails 支架?

ruby-on-rails - Ruby on Rails 6 Postgres upsert_all 区分更新和插入

c# - 计算多维数组特定维度的项目(C#)

postgresql - 将行级安全与列授权相结合