在沙发案视图过滤方面遇到麻烦



我正在使用spring-data-couchbase,我正在尝试为 findAll()查询创建一个背景视图。我已经创建了一个名为ClusterCodeXref的文档,并创建了一个名为allClusterCodeXrefs的视图,使我的模型类匹配。我需要根据调用类过滤(我说的是对吗?(,因为此存储桶也将用于其他应用程序。

我的模型看起来像这样:

package com.company.aad.xref.model;
@Document
public class ClusterCodeXref implements Serializable {
    private static final long serialVersionUID = 3072475211055736282L;
    @Id
    String id;
    @Field("SET_NUM")
    String setNum;
    ...
}

这是存储库类:

@Repository
public interface ClusterCodeXrefRepository
  extends CrudRepository<ClusterCodeXref, String> {
    @View
    List<ClusterCodeXref> findAllClusterCodeXrefs();
}

这是我的观点:

function (doc, meta) {  
  if (doc._class == "com.company.aad.xref.model.ClusterCodeXref") {
    emit(meta.id, null);
  }
}

但是当我运行findAllClusterCodeXrefs()查询时,没有返回行。如果我将if statement淘汰,我会得到我期望的一切。我在做什么错?

显然_class字段不会自动添加到导入的数据中。我需要手动将_class添加到我的数据集(从CSV文件中导入(。

您可以通过注释指定本文档的自动生成视图和主索引,如下:

@N1qlPrimaryIndexed
@ViewIndexed(designDoc = "clusterCodeXref")
@Repository
public interface ClusterCodeXrefRepository extends CrudRepository<ClusterCodeXref, String> {
    @View
    List<ClusterCodeXref> findAllClusterCodeXrefs();
}

我在这里回答了一个非常相似的问题,带有子元素的crudrepository查询?

相关内容

  • 没有找到相关文章

最新更新