2

jsonapi-resources gemを使用して Rails で json api を構築しています。図書館は本当に素晴らしいです、それは多くの仕事をします。

ただし、DB の一部の列名は、API で表示する意味がありません。

だから、私の質問: リソースのプロパティ/属性の名前を変更することは可能ですか?

例:

属性を持つモデル User があるとしましょうlogin

class User < ActiveRecord::Base
  attr_accessor :login
end

そして、私loginはAPIで次のように表示したいusername、例えば:

class UserResource < JSONAPI::Resource
  attribute :username, map_to: :login
end

ありがとう!

4

3 に答える 3

2

属性の:username エイリアスを設定します。:login

class User < ActiveRecord::Base
  attr_accessor :login

  alias_attribute :username, :login
end

次に、 (JR) で次のように属性JSONAPI::Resourcesを指定できます。username

class UserResource < JSONAPI::Resource
  attribute :username
end

エイリアスを設定することで、username属性を属性にマッピングしたので、またはloginを使用しても同じ値が返されます。usernamelogin

于 2016-01-07T18:09:31.643 に答える
2

alias または alias_method を使用する必要があると思います。 http://blog.bigbinary.com/2012/01/08/alias-vs-alias-method.html

于 2016-01-07T16:16:14.373 に答える