我有一个"成功案例"页面(/cases(,当我进入详细信息页面时,我会看到类似于/cases/some slug的内容。
";案例";模式是指一个品牌,像这样:
{title: 'Case Brand', name: 'caseBrand', type: 'reference',
to: [
{type: 'brands'}
]
},
在我找到的所有例子中,我必须将品牌与案例联系起来。但如果我把每个案例都与一个特定的品牌联系起来,会更有用。(另一种方式,我必须附加到品牌,多个案例(。
因此,在下面的例子中,我采用了oposite方式(对于我构建的结构来说,不方便(:
const getCaseBrand = `*[_type=="cases" && caseSlug.current == "${slug}" ]{
_id,caseSlug,
"brand": *[_type =="brands" && references(^._id)]{
_id,
brandName,
brandDescription,
brandLogo
}
}`;
知道我该如何构建我需要的东西吗?基本上是:
- 获取caseBrand对象,基于";案例";架构
- 这我将展示品牌名称&个人案例页面中的徽标
非常感谢。
我已经找到了答案,它比我想象的要简单,只需在主查询中添加一个数组就可以实现。
*[_type == 'cases' && caseSlug.current == "amazon-prime-india"]
{...,
caseBrand -> {
brandName,
brandImage
},
caseAgency -> {
agencyName,
agencyLogo
}
}
我的模式";案例";已经参考了品牌和代理商。所以基本上,我需要做的是:
- 从特定案例中获取所有信息(这是主查询(
- 添加具有引用类型的数组