2017-10-10 72 views
0

我正在嘗試爲使用store_accessor的「A」模型設置類型。我不知道如何定義具有JSON列的列 - :富graphql中的Rails jsonb列

class A < ActiveRecord 
    store_accessor :foo, :bar, :baz 
end 

Types::AType = GraphQL::ObjectType.define do 
    name ‘A’ 

    field: id, !types.ID 
    field :bar, !types.String, hash_key: :bar 
    field :baz, !types.String, hash_key: :baz 
end 

回答

1

創建自定義ScalarType稱爲JSONType

JSONType = GraphQL::ScalarType.define do 
    name "JSON Type" 
    coerce_input -> (value) { JSON.parse(value) } 
    coerce_result -> (value) { value } 
end 

而且在對象類型定義消耗它

field :foo, JSONType do 
    resolve Resolvers::Foo.new 
end