Ruby on rails 嵌套模型不';t更新

Ruby on rails 嵌套模型不';t更新,ruby-on-rails,ruby-on-rails-4,nested-attributes,Ruby On Rails,Ruby On Rails 4,Nested Attributes,我有两种型号:PointPage和PointPageClass,它们属于:point\u page。当用户创建PointPagerails在数据库中创建几个(现在有6个)PointPageClass。我需要在PointPageedit页面上编辑它们。因此,我在controller和视图中的字段中使用嵌套属性 point\u page\u表单 <%= form_for @point_page, role: 'form' do |f| %> <div class="form

我有两种型号:
PointPage
PointPageClass
,它们属于:point\u page。当用户创建
PointPage
rails在数据库中创建几个(现在有6个)
PointPageClass
。我需要在
PointPage
edit
页面上编辑它们。因此,我在controller和视图中的字段中使用嵌套属性

point\u page\u表单

<%= form_for @point_page, role: 'form' do |f| %>
    <div class="form-group">
      <%= f.label :name %>
      <%= f.text_field :name, class: 'form-control' %>
    </div>

    ... # some other PointPage fields

    <% @point_page.point_page_classes.each do |class| %>
        <%= f.fields_for :point_page_classes do |builder| %>
            <div class="row">
              <div class="col-lg-6">
                  <%= builder.text_field :distance_price, class: 'form-control' %>
              </div>
              <div class="col-lg-6">
                  <%= builder.text_field :show_price, class: 'form-control' %>
              </div>
            </div>
        <% end %>
    <% end %>

    <%= f.submit 'Save', class: 'btn btn-default' %>
<% end %>
因此,我添加了
point\u page\u controller
PointPageClass
属性,但当我保存更改时,它只保存
PointPage
的更改,而不保存
PointPageClass
distance\u price
show\u price
)的更改


谢谢你的帮助

问题之一可能是不允许
点页面参数中的
:id
。要进行
更新
,您需要允许
:id

尝试将您的
point\u page\u参数更改为如下所示

def point_page_params
  params.require(:point_page).permit(:id,:name, :url, :article,point_page_classes_attributes: [:id,:distance_price, :show_price])
end

你能给我们看看你的
模型吗
?你的模型中有
接受嵌套的属性吗?:point\u page\u class
?为什么在视图中有这行代码
?上帝保佑冰人:)谢谢你们,伙计们。这真是个愚蠢的错误。我完全忘记了
接受
的嵌套属性。我真丢脸:)
def point_page_params
  params.require(:point_page).permit(:id,:name, :url, :article,point_page_classes_attributes: [:id,:distance_price, :show_price])
end