关于在YAML文件中设置SiteSettings的问题

你好 @maggiomj

如果你检查 Discourse 的 PostgreSQL 数据库,会看到一个名为 site_settings 的表,大多数站点设置都持久化(保存)在该数据库中。

由于你没有具体说明感兴趣的站点设置,很难给出精确的回复;但一般来说,一旦这些站点设置在数据库中配置完成,通常就没有必要在每次重建时都在 yml 文件中重复设置它们。

当然,这不适用于任何未持久化到数据库中的自定义站点设置。

希望这能帮到你。

a_server:~# docker exec -it data bash
a_server-data:/# su postgres
postgres@a_server-data:/$ psql discourse
psql (12.2 (Debian 12.2-2.pgdg100+1))
输入 "help" 获取帮助。

discourse=# \dt *site*
             List of relations
 Schema |     Name      | Type  |   Owner   
--------+---------------+-------+-----------
 public | site_settings | table | discourse
 public | sitemaps      | table | discourse
(2 rows)

discourse=# select count(id) from site_settings;
 count 
-------
   141
(1 row)

discourse=# 

你可以将 yml 文件中的站点设置指令与数据库中的内容进行对比,这样就能大致了解哪些 yml 中的站点设置指令是冗余的。