GraphQL架构/解析器对于对象对象是什么样的?

时间:2016-10-05 19:29:03

标签: graphql apollo apollo-server apollostack

数据

{
    user_id: 'abc',
    movies: {
        '111': {
            title: 'Star Wars 1' 
        },
        '112': {
            title: 'Star Wars 2' 
        }
    }
}

这样的架构和解析器会是什么样的?

这是我最好的尝试,但我从未见过这样的例子,所以真的不确定。

模式

type User {
    user_id: String
    movies: Movies
}
type Movies {
    id: Movie
}
type Movie {
    title: String
}

分解器

User: {
    movies(user) {
        return user.movies;
    }
},
Movies: {
    id(movie) {
        return movie;
    }
} 

1 个答案:

答案 0 :(得分:0)

您仍然缺少查询类型,该类型告诉GraphQL您的查询可以从哪里开始。类似的东西:

type Query {
  user(id: String): User
  movie(id: String): Movie
}

另外,我认为对于您的电影,您应该[Movie]而不是Movies类型,然后是id。所以摆脱你的Movies类型,然后执行此操作:

type User {
    id: String
    movies: [Movie]
}
type Movie {
    id: String
    title: String
}