我正在尝试创建一种变异方法来将电影添加到用户最喜欢的列表中,但我不确定如何构建变异以包含指定的用户。
我有一个查询来查看用户可能拥有的所有收藏夹,看起来像这样。
query getFavorites {
user(id: 2) {
name
email
username
favorites {
title
length
}
}
}
这是查询方法
@GraphQLQuery
public List<Movie> getFavorites(@GraphQLContext User u) {
User user = userRepository.findById(u.getId()).get();
return user.getMovies();
}
但我不确定如何针对特定用户编写突变
这是我添加收藏夹的突变方法,目前我只是因为一个空用户而得到一个 NullPointerException。
@GraphQLMutation
public Movie addFavorite(@GraphQLContext User user, long movieId) {
Movie movie = movieRepository.findById(movieId).orElse(null);
user.getMovies().addAll(Arrays.asList(movie));
userRepository.save(user);
return movie;
}