Ruby中是否存在切片函数的相反功能?

Ada*_*NYC 38 ruby-on-rails mass-assignment

在这篇文章中,切片函数用于仅获取参数的必要元素.我应该使用什么函数来排除params元素(例如user_id)?

Article.new(params[:article].slice(:title, :body))
Run Code Online (Sandbox Code Playgroud)

谢谢.

Gui*_*ume 66

使用除外:

a = {"foo" => 0, "bar" => 42, "baz" => 1024 }
a.except("foo")
# returns => {"bar" => 42, "baz" => 1024}
Run Code Online (Sandbox Code Playgroud)

  • 值得注意的是,`except`是一个由Rails添加的方法,如果自己使用Ruby,通常不可用 (12认同)
  • Ruby 3 在 Hash 中添加了“ except ”。请参阅文档[此处](https://ruby-doc.org/core-3.0.0/Hash.html#method-i- except) (3认同)