Netlify CMS 重建 Config.yml 更改
Netlify CMS Rebuild Config.yml Changes
我刚刚开始使用 Netlify CMS,我很困惑如何在我的 admin/config.yml
发生变化后更新 CMS
我克隆了默认的 Hugo 项目,并修改了主页的一些 config.yml
文件字段,并在 index.html 中正确连接了它们。生成的静态文件看起来是正确的。
但是,当我转到 CMS (/admin
) 时,我只看到旧的 index.html 内容(在 CMS 预览部分)。所以我重命名了 js
文件夹并只将 app.js
文件复制到一个新的 js
文件夹中。但这打破了说 cms.js
丢失的事情。我添加了旧的,但它没有选择 cms-preview-templates
。
我以为所有这些都会从 config.yml
生成。我需要手动编辑 JS 文件来设置 CMS 吗?或者是否可以在 config.yml
和关联的 html 文件更改后重新生成所有文件?
关于设置您自己的网站的帮助页面并没有太多关于编辑模板的说明。
更新
我看到 cms.js
文件有这样的内容:
import HomePreview from "./cms-preview-templates/home";
import PostPreview from "./cms-preview-templates/post";
import ProductsPreview from "./cms-preview-templates/products";
import ValuesPreview from "./cms-preview-templates/values";
import ContactPreview from "./cms-preview-templates/contact";
当我检查这些文件(master
分支)时,它们包含原始示例项目的内容,但没有我所做的更改。当我更改我的网站时,我需要做什么来自动更新这些模板文件(相应的更改在 admin/config.yml
文件中)?
谢谢!
在将这些更改推送到存储库之前,在项目内容中进行本地更改不会反映在 NetlifyCMS
中。默认 config.yml
设置不包括本地工作流,因为此时它没有本地文件系统后端。
对 admin/config.yml
的更改将在本地生效,但预计内容数据会在您的后端配置位置发生更改。
示例:
以下配置将在 netlify/netlifycms-example
存储库的 master
分支中查找 GitHub
上的更改。
admin/config.yml
backend:
name: github
repo: netlify/netlifycms-example
branch: master
更新: 当您更改 config.yml
并更改站点生成器中的模板时,您还需要在预览模板代码中进行这些更改让 cms 在预览中正确显示您的数据。
您可以使用 netlify-cms-proxy-server
进行本地开发。
像这样编辑 config.yaml 以添加 local_backend
字段
backend
name: git-gateway
# important bits here
local_backend: true
...
然后,在项目目录下,启动netlify-cms-proxy-server
npx netlify-cms-proxy-server
启动您的本地开发服务器,您应该可以开始了
# note: may be different depending on your project's configuration
hugo server -D
有关更多详细信息,请查看 netlify-cms 关于使用本地 git 存储库的 docs。
我刚刚开始使用 Netlify CMS,我很困惑如何在我的 admin/config.yml
发生变化后更新 CMS
我克隆了默认的 Hugo 项目,并修改了主页的一些 config.yml
文件字段,并在 index.html 中正确连接了它们。生成的静态文件看起来是正确的。
但是,当我转到 CMS (/admin
) 时,我只看到旧的 index.html 内容(在 CMS 预览部分)。所以我重命名了 js
文件夹并只将 app.js
文件复制到一个新的 js
文件夹中。但这打破了说 cms.js
丢失的事情。我添加了旧的,但它没有选择 cms-preview-templates
。
我以为所有这些都会从 config.yml
生成。我需要手动编辑 JS 文件来设置 CMS 吗?或者是否可以在 config.yml
和关联的 html 文件更改后重新生成所有文件?
关于设置您自己的网站的帮助页面并没有太多关于编辑模板的说明。
更新
我看到 cms.js
文件有这样的内容:
import HomePreview from "./cms-preview-templates/home";
import PostPreview from "./cms-preview-templates/post";
import ProductsPreview from "./cms-preview-templates/products";
import ValuesPreview from "./cms-preview-templates/values";
import ContactPreview from "./cms-preview-templates/contact";
当我检查这些文件(master
分支)时,它们包含原始示例项目的内容,但没有我所做的更改。当我更改我的网站时,我需要做什么来自动更新这些模板文件(相应的更改在 admin/config.yml
文件中)?
谢谢!
在将这些更改推送到存储库之前,在项目内容中进行本地更改不会反映在 NetlifyCMS
中。默认 config.yml
设置不包括本地工作流,因为此时它没有本地文件系统后端。
对 admin/config.yml
的更改将在本地生效,但预计内容数据会在您的后端配置位置发生更改。
示例:
以下配置将在 netlify/netlifycms-example
存储库的 master
分支中查找 GitHub
上的更改。
admin/config.yml
backend:
name: github
repo: netlify/netlifycms-example
branch: master
更新: 当您更改 config.yml
并更改站点生成器中的模板时,您还需要在预览模板代码中进行这些更改让 cms 在预览中正确显示您的数据。
您可以使用 netlify-cms-proxy-server
进行本地开发。
像这样编辑 config.yaml 以添加 local_backend
字段
backend
name: git-gateway
# important bits here
local_backend: true
...
然后,在项目目录下,启动netlify-cms-proxy-server
npx netlify-cms-proxy-server
启动您的本地开发服务器,您应该可以开始了
# note: may be different depending on your project's configuration
hugo server -D
有关更多详细信息,请查看 netlify-cms 关于使用本地 git 存储库的 docs。