【问题标题】:Rails 3 form helper for models with nested attributes具有嵌套属性的模型的 Rails 3 表单助手
【发布时间】:2014-03-17 07:48:39
【问题描述】:

我对嵌套属性的表单感到困惑

这是我的模型:

class User < ActiveRecord::Base

  has_one :user_email_preference, :dependent => :destroy
  accepts_nested_attributes_for :user_email_preference
  attr_accessible :user_email_preference_attributes

这是我对设计的看法:

<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => { :method => :put }) do |f| %>
  <%= f.fields_for resource.user_email_preference do |email| %>
  <li> 
    <h3><%= email.label :alerts %></h3>
    <div><%= email.check_box :alerts, class:"js-switch" %></div>
  </li>
  <li> 
    <h3><%= email.label :newsletter %></h3>
    <div><%= email.check_box :newsletter, class:"js-switch" %></div>
  </li> 
  <% end %>
<% end %>

使用 http get 正确呈现视图。然而,提交表单不断给我以下错误消息:

Can't mass-assign protected attributes: user_email_preference

对哪里出错有什么建议吗?

【问题讨论】:

    标签: ruby-on-rails-3 forms nested-attributes attr-accessible


    【解决方案1】:

    应该只是f.fields_for :user_email_preference do |email|。这将设置正确的嵌套属性名称。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多