hol*_*den 13 ruby-on-rails hstore strong-parameters ruby-on-rails-4
我在使用Hstore和动态访问器克服Rails 4中新的强params要求时遇到了问题
我有一个Hstore列:content,我想用它来存储多种语言的内容,即:en, :fr等等.我不知道在模型或控制器中预先设置哪种语言.
store_accessor :content, [:en, :fr] #+226 random other il8n languages won't work.
Run Code Online (Sandbox Code Playgroud)
如何在一个列的rails 4中覆盖强params(或允许动态hstore键)?
params.require(:article).permit(
:name, :content,
:en, :fr #+226 random translations
)
Run Code Online (Sandbox Code Playgroud)
缺乏...
params.require(:article).permit!
Run Code Online (Sandbox Code Playgroud)
这当然有效.
Chr*_*n-G 15
如果我理解正确,您希望将动态密钥的哈希列入白名单.您可以使用ruby以下代码执行以下操作:
params.require(:article).permit(:name).tap do |whitelisted|
whitelisted[:content] = params[:article][:content]
end
Run Code Online (Sandbox Code Playgroud)
这对我有用,希望它有所帮助!