hdng
(Tom)
1
你好,
希望有人能在这里提供帮助。
作为背景,我从之前的代理机构接手了这个论坛,在此之前我从未接触过 Discourse。
我需要对主题进行修改(以修复 id:discourse.component-template-resolving notice)。
我已经按照指南设置了 CLI。我设法连接到 API 并下载了主题文件。
但是,当我尝试运行 discourse_theme watch . 时,我遇到了以下错误:
✘ 错误 422 https://forum.mywebsite.co.uk/admin/themes/import.json: 导入错误:about.json 不存在或无效。您确定这是一个 Discourse 主题吗?
我已经检查了以下几点:
- 我在正确的文件夹中操作。
- about.json 的名称和格式均正确
- 所有目录都存在
我曾怀疑可能是 API 权限问题,但如果我已经连接并且 admin/api/keys/settings 中的范围是正确的并且存在,那么它应该不是权限问题吧?
基本上,我卡住了。有人能指点我一下吗?
3 个赞
我记得类似的情况仍然是API问题:你能检查一下你的API密钥设置吗,它必须设置为global并且设置为特定用户,而不是所有用户。
3 个赞
hdng
(Tom)
3
你好 Charlie,
谢谢你的回复。我正在使用的 API 密钥已经设置为全局和特定用户。
但是,我已经针对一些版主/管理员创建了 2 个新的密钥(以防万一它不喜欢当前的管理员用户),但结果还是一样。
谢谢 
1 个赞
hdng
(Tom)
4
抱歉,只是为了更新此内容,我还创建了一个全新的主题 discourse_theme new <dir>,并且在我运行 watch 命令时它再次失败,因此正如您之前提到的,这排除了主题存在问题的可能性。
1 个赞
抱歉,这就是我关于“如何运行”设置的全部知识了 
我相信很快会有更有知识的人来帮助你。
我主要是在尝试在插件上运行命令时看到这个错误(这行不通),但你说它是一个主题,或者是在 .json 中存在格式错误,但你已经检查过了…… 
2 个赞
位置可能有所不同,但您是否查看过 ~/.discourse_theme 文件?
我之前遇到过一个问题,我的终端模拟器使用了“带括号的粘贴模式”。
您可以在下方看到区别(这些不是真实的密钥,我已将其截断以便分享)……如果您看到类似第一个条目带有转义字符的内容,那是不正确的,并且将无法正常工作。

hdng
(Tom)
7
您好 Kris,
谢谢您的回复,我之前没想到这一点!
我检查了我的 discourse_theme 文件,虽然 API 密钥的格式是正确的,但与其他示例(包括您的)相比,该文件本身看起来有些格式错误。
值得注意的是,我使用的是 macOS,这是在 iTerm 中运行 cat ~/discourse_theme 的结果。
"/Users/firstname.lastname/_dev/_dru/site-discourse-forum/src":
url: https://forum.site.co.uk
theme_id: 2
api_keys:
! '':
https://forum.site.co.uk: [API_KEY]
"/Users/firstname.lastname/_dev/_dru/site-discourse-forum":
url: https://forum.site.co.uk
我将着手清理这个问题,因为这有可能是原因。
编辑:不行。删除了 ! ‘ ‘: 和第二个条目。结果一样。
1 个赞