0

我正在尝试将我的 Jekyll 安装与 NetlifyCMS 连接起来。我正在使用一个自定义主题,在没有 CMS 部分的情况下可以正常工作,但是当我按照NetflifyCMS 文档进行集成时,我得到了这个错误。

~/.rvm/gems/ruby-2.5.1/gems/jekyll-3.4.1/lib/jekyll/collection.rb:158:in `sanitize_label': undefined method `gsub' for #<Hash:0x00007fed774d2a3

我在 Mac OSX 上运行它,这是我的 config.yml 。相关部分是收集部分:

collections:
  - name: 'docs'
    output: true
    label: 'Docs'
    folder: '_docs/'
    create: true
    slug: '{{year}}-{{month}}-{{day}}-{{slug}}'
    editor:
      preview: false
    fields:
      - { label: 'Layout', name: 'layout', widget: 'hidden', default: 'post' }
      - { label: 'Title', name: 'title', widget: 'string' }
      - { label: 'Publish Date', name: 'date', widget: 'datetime' }
      - { label: 'Body', name: 'body', widget: 'markdown' }
  - name: 'faqs'
    output: false
    label: 'Faqs'
    folder: '_faqs/'
    create: true
    slug: '{{year}}-{{month}}-{{day}}-{{slug}}'
    editor:
      preview: false
    fields:
      - { label: 'Layout', name: 'layout', widget: 'hidden', default: 'post' }
      - { label: 'Title', name: 'title', widget: 'string' }
      - { label: 'Publish Date', name: 'date', widget: 'datetime' }
      - { label: 'Body', name: 'body', widget: 'markdown' }
  - name: 'changelogs'
    output: false
  - name: 'blog'
    output: true
    label: 'Blog'
    folder: '_posts/'
    create: true
    slug: '{{year}}-{{month}}-{{day}}-{{slug}}'
    editor:
      preview: false
    fields:
      - { label: 'Layout', name: 'layout', widget: 'hidden', default: 'post' }
      - { label: 'Title', name: 'title', widget: 'string' }
      - { label: 'Publish Date', name: 'date', widget: 'datetime' }
      - { label: 'Body', name: 'body', widget: 'markdown' }
4

1 回答 1

0

发现了问题。NetlifyCMS 文档不是很清楚。这些集合应该已经放在了,./admin/config.yml而我把它们放在了主config.yml文件中。

于 2019-10-09T12:28:45.023 回答