如何使用 Objectify 删除特定字段?

How to delete specific field using Objectify?

我正在尝试从我的数据库中删除特定字段 table。但遗憾的是没有成功。我试过这段代码:

Query<Movie> query = ofy().load().type(Movie.class).filter("name =", "movie name");
        QueryResultIterator<Movie> queryIterator = query.iterator();
        while (queryIterator.hasNext()){
            Movie m = queryIterator.next();
            if(p.getYear()!= null){
                ofy().delete().entity(p.getYear()).now();

            }
        }

我也试过这个:

Movie m = ofy().load().type(Movie.class).id("movie id").now();
        List<Long> actors = m.getActor();
        ofy().delete().entity(actors).now();

但是也没用。 我错过了什么?

您需要将要删除的 属性 设置为 null 然后 save 实体。 delete 将删除整个实体,而不是任何单个 属性。

示例:

Movie m = ofy().load().type(Movie.class).id("movie id").now();
m.actors = null;
ofy().save().entity(m).now();