- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我很难让 Rails 4 使用 nested_attributes 和序列化。我有:
class Client < ActiveRecord::Base
belongs_to :event
serialize :phones
end
class Event < ActiveRecord::Base
has_one :client
end
class EventsController < ApplicationController
...
def event_params
params.permit(client_attributes: [:phones])
end
end
当我通过事件时:
{client_attributes: { phones: 'string'}}
它有效,但是当我尝试时
{client_attributes: { phones: [{phone_1_hash},{phone_2_hash}]}}
我收到“Unpermitted parameters: phones”消息并且字段未保存...
我试过
class EventsController < ApplicationController
...
def event_params
params.permit(client_attributes: [phones:[]])
end
end
或
class Client < ActiveRecord::Base
belongs_to :event
serialize :phones, Array
end
但到目前为止没有任何帮助。任何建议,将不胜感激。谢谢!
最佳答案
Pfff - 终于明白了......有了强大的参数,未知的 key 就无法通过,所以这里的解决方案是:
class EventsController < ApplicationController
...
def event_params
params.permit(client_attributes: [ {phones: [:number, :type]}])
end
end
基于 http://edgeapi.rubyonrails.org/classes/ActionController/Parameters.html#method-i-permit-21
希望对大家有帮助。
我可以在此处的可序列化字段中指定 key ,但是用户添加的 key 怎么办?序列化字段是否可用于强参数? (这可能应该是一个新问题......)
关于serialization - 如何使 rails strong_parameters + nested_attributes + serialize 工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18380263/
我尝试更新 iproduction,一个来自生产的嵌套形式,但我在这行出现了参数错误:“参数数量错误(0 代表 1)” @production.update.iproductions_attribut
我正在尝试翻译多态模型的嵌套表单属性的标签。我正在使用 Rails 4。 对象关系: class Question Total cost 关于ruby-on-rails - 多态关系中 nested
我很难让 Rails 4 使用 nested_attributes 和序列化。我有: class Client < ActiveRecord::Base belongs_to :event s
我想使用 nested_attributes 将所有旧关联对象替换为新对象。最好的方法是什么? 如果我使用下面的代码,每次我用 nested_attributes 更新我的主对象时,都会创建关联的新对
我有 2 个带有嵌套数据的模型: class Goodtender include Mongoid::Document include Mongoid::Timestamps field
我们有一个应用程序必须使用在 .net 上运行的外部数据库进行身份验证。有一个单独的 Rails 应用程序,安装为处理身份验证的 gem。当某人进行身份验证时,他们的信息将存储在 session 对象
我有一个模型 contact has_many :locations, through: :relationships,以及 has_many :teams, through: :contacts_t
我是一名优秀的程序员,十分优秀!