【问题标题】:Is it possible to query document schema metadata in Sanity/GROQ?是否可以在 Sanity/GROQ 中查询文档模式元数据?
【发布时间】:2021-04-30 06:08:19
【问题描述】:

我在我的 Sanity/NextJS 项目中定义了一个简单的单例文档架构,用于模拟我的“Colophon”页面(richText 是自定义块字段类型):

export default {
    title: 'Colophon',
    name: 'colophon',
    type: 'document',
    __experimental_actions: ['update', 'publish'],
    fields: [
        {
            title: 'Body',
            name: 'body',
            type: 'richText',
            validation: Rule => Rule.required(),
        },
    ],
};

我在 NextJS 应用程序中通过一个简单的查询检索此文档:

export async function getStaticProps() {
    const colophon = await client.fetch(`
        *[_type == "colophon"][0]
    `);
    // ...
};

是否可以编写一个 GROQ 查询来检索 架构中定义的元标题,即Colophon?虽然这是一个单例文档,但如果可能的话,我想避免在我的项目中重复这个字符串。目前,我只能在结果中看到文档上的字段,即body

感谢阅读!

【问题讨论】:

    标签: sanity groq


    【解决方案1】:

    不,我不相信有。

    据我了解您所追求的; 架构是在工作室实例中定义的,而不是在数据存储中。这两个不是硬耦合的。我有几个工作室实例,它们使用一个项目/数据存储在模式上略有不同。您查询以获取数据的 API 并不关心使用了哪个工作室和架构,也无法回答实际的架构详细信息。

    【讨论】:

    • 谢谢 - 自发布问题以来的一些研究证实了这一点。完整的数据存储导出(通过 API 端点或 CLI)可以包含 Sanity 所称的“系统文档”,但这些似乎仅限于插件配置等数据。
    猜你喜欢
    • 2022-11-13
    • 2021-01-06
    • 1970-01-01
    • 2022-10-17
    • 2018-08-16
    • 2023-01-13
    • 2019-08-15
    • 2016-12-18
    • 1970-01-01
    相关资源
    最近更新 更多