Ruby on Rails - as_json 删除一些属性

Ere*_*555 1 ruby ruby-on-rails

我已经准备好了一些属性的响应。但是,我不希望其中一些被传递到响应中。我怎么做?我想我需要以except某种方式使用。

Seb*_*lma 6

:only:except选项可以用于限制类似于包含的属性,和工作attributes方法。

user.as_json(only: [:id, :name])
# => { "id" => 1, "name" => "Konata Izumi" }

user.as_json(except: [:id, :created_at, :age])
# => { "name" => "Konata Izumi", "awesome" => true }
Run Code Online (Sandbox Code Playgroud)