配置 hugo 以从数据库内容生成站点

Configure hugo to generate site from DB content

Hugo 中是否有插件或其他东西允许 hugo 从数据库中读取内容并生成站点,而不是从 markdown/data 个文件中读取数据?

开箱即用,Hugo 仅生成 HTML(或 XML,或 JSON)Markdown 文件的表示形式。在 Hugo 的哲学中有一些东西说可复制​​的构建优先于其他东西——我不知道我在哪里看到过,但我在某个时候看到过,当我在寻找与你相同的东西时。

但是有一些方法可以让你更接近那个目标。

transform.unmarshall

transform.unmarshal 解析 JSONTOMLYAMLXMLCSV 资源并将它们转换为映射或数组。但是您仍然需要一个本地文件才能使用它。

您可以做的一件事是将其纳入您的构建工作流程,并且在您使用 Hugo 生成您的站点之前,您将添加一个步骤来获取数据并写入它以其中一种格式保存到本地文件。

resources.GetRemote

resources.GetRemote 向远程 URL 发出 HTTP 请求,最近已添加到 Hugo。

这样,您就不需要在构建过程中有一个新的步骤来抓取、格式化和写入数据到磁盘;相反,您会在模板中添加一些逻辑以从 URL 中获取数据。当然,您需要那个 HTTP 端点,所以您仍然需要某种可用的 API。