gpt4 book ai didi

mongoid - 使用强参数的 Mongoid 中的动态哈希字段

转载 作者:行者123 更新时间:2023-12-04 14:29:13 28 4
gpt4 key购买 nike

因此,似乎没有任何干净的方法可以通用地允许具有强参数的 Hash 字段。这当然可能是一个强大的参数问题,但我很好奇是否有解决方法。我有一个包含一些字段的模型...

field :name, type: String
field :email, type: String
field :other_stuff, type: Hash, default: {}

现在我可以允许一切:
params.require(:registration).permit!

但这并不是一个好主意,我想做的是......

params.require(:registration).permit(:name, :email, { other_stuff: {} })

然而,这对于强参数似乎是不可能的,不可能只将哈希作为属性列入白名单(对于以 SQL 为中心的 ActiveRecord API 来说是的!)。任何想法如何做到这一点,或者是我提交 Rails 补丁以允许这种情况的最佳选择。

最佳答案

好的,经过研究,我找到了一个优雅的解决方案,我也将开始使用:

params.require(:registration).permit(:name).tap do |whitelisted|
whitelisted[:other_stuff] = params[:registration][:other_stuff]
end

来源: https://github.com/rails/rails/issues/9454#issuecomment-14167664

关于mongoid - 使用强参数的 Mongoid 中的动态哈希字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18455600/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com