您好,我们已经安装了“Solved”插件,并且正在通过 Python 脚本以编程方式创建类别。我们希望将此类别设置字段设置为“True”。运行脚本时,它显示已成功更新,但当我们检查此类别设置字段时,它并未设置为“True”,仍然是“False”。如何调试和修复此问题?
2 个赞
我总是参考 Reverse engineer the Discourse API 来回答这类问题。
5 个赞
据我所知,如果你正在用脚本构建分类,我假设你正在使用 JSON 来添加分类。你需要对端点和脚本进行一些更改。你也可以参考这份文档:Discourse Categories API。
然而,Discourse 是一个强大的工具。你可以查看这篇指南:Reverse Engineering the Discourse API。由于 Discourse 由完整的 JSON API 支持,你可以对其进行逆向工程,进行必要的修改,使其按需工作。
一个小提示:
- 在 UI 中手动更改所需的“已解决”设置。
- 检查浏览器发出的网络请求,以确定确切的 API 端点、请求方法(例如
PUT)和有效负载。
在 Python 脚本中,它看起来会像这样:
payload = {
"enable_solved": True # 调整这个
}
response = requests.put(url, headers=headers, json=payload)
if response.status_code == 200:
print("Category updated")
else:
print(f"Failed: {response.status_code} - {response.text}")
update_category_settings(category_id=123)
PS:我不太确定这一点,但我最近构建了一些脚本,所以这个回复是基于我到目前为止遇到的事情。![]()
谢谢你,Mihir,这确实帮助解决了这个问题。感谢你的输入和建议。
1 个赞
谢谢Thomas指出了这种方法。
很高兴能帮到你 ![]()
