大家好。
我希望这是我的设置“遭受”了错误配置的问题——否则我将不得不称之为bug,因为……
标题中带有国家字符的主题会得到一个带有这些字符的 URL 没问题,那里没有问题,但是从这样的主题发布的页面显示了一个被严重破坏的 URL。
我无法使用,手动放置正确的字符,因为 Discourse 说slug包含不正确的字符。
我已经编码了——我认为这是非英语语言的必需项,所以我没有尝试其他任何东西。
不行……问题没有解决,我(想象中的每个人)更愿意保留我的民族字符。这看起来越来越像一个错误,不是吗?
有开发人员在这里吗?我应该把它移到bug吗?
如果您想提交 bug 报告而不是向社区寻求支持,这里有一份很好的 bug 报告指南 - Writing an effective bug report
我们需要一些重现步骤,截图也会很有价值。
@JammyDodger 没什么特别的——部署,更改语言(就我而言是波兰语),设置编码——应该很容易重现。
可以创建带有国家字符的标题(我猜 URL/slug 是由此创建的)——但无法发布带有这些国家字符的页面。
我希望有人/开发人员在我提交错误报告之前能够重现。
您有一个可以复制粘贴的主题标题来试用吗?
如果不是生菜,那就不是青蛙
或者第二个例子:
老阿波(Åbo)的冰面上有一层油。
我进行了一次测试运行:
- 将
default locale设置为 polski(或 suomi) - 将
slug generation method设置为 ‘encoded’ - 启用
enable page publishing
- 创建了标题为“Jeśli nie sałata to nie żaba”(或“Jäällä öljyä vanhassa Åbossa”)的主题
- 生成的主题 slug 为
/t/je%C5%9Bli-nie-sa%C5%82ata-to-nie-%C5%BCaba/758(或/t/j%C3%A4%C3%A4ll%C3%A4-%C3%B6ljy%C3%A4-vanhassa-%C3%A5bossa/759)
- 尝试使用编码后的 slug
je%C5%9Bli-nie-sa%C5%82ata-to-nie-%C5%BCaba作为 URL 发布主题 - 无法发布,因为 URL 包含无效字符
- 删除编码后即可发布页面
或者……
看起来编码后的 slug 不支持页面发布。
这里预期是什么?我查看了波兰和芬兰的政府网站,看看它们的 URL 是什么样的,它们没有对 URL 进行编码以解决这个问题。
我也搜索了一下,我认为这个问题以前没有出现过,如果它们从未得到支持,这可能是 Feature request(功能请求)而不是 Bug(错误)的范畴。
别介意政府——他们很少是我们中最聪明的,尽管许多人希望他们是。
至于我们其他人——是的,我很惊讶以前从来没有人报告过——许多人,如果不是大多数,都是羊群,或者懒惰,或者两者兼有。
有什么可期待的——我只担心,把注意力集中在一件重要的事情上,对优秀的开发者/程序员来说肯定很重要——那就是逻辑和一致性。如果系统/代码的一个部分做了(或没做)某事,那么与之相关、依赖于它的其他部分也应该……显然如此。以此类推。
错误是——发布的页面在标题中包含国家字符,但它们不应该。Discourse 应该能够发布带有国家字符的 URL/slug 的页面。
您可以更轻松地重现此问题。
只需尝试发布页面并将 % 符号添加到 slug。它将立即显示有关无效字符的消息。
您能提供一个您期望看到的示例 URL 吗?
我认为页面发布背后的想法是拥有一个可读的 URL,所以一个编码过的 URL 似乎违背了这一点?
不,他们不编码,至少在芬兰是这样——据我所知,北欧国家都一样,几乎或完全包括了世界上所有的国家。
这只是因为互联网就是这样运作的,这都是历史原因以及英语(及其非常有限的字母系统😅)造成的。但对于 Linux 上的网址和文件名,使用这些字符始终是个坏主意。
我并不期望除了 a..z 之外的任何字母都会被清理或编码。我们还必须记住,很少有人会看到实际的网址。
所以……我在这里的角色只是提供一些更多的乐高积木来玩,而且我从来没有在网址方面遇到过任何问题。我的用户也没有。
我不明白——我提交了一个 bug 报告。
重复发布您的问题是不必要的。如果您能在此处提供更多详细信息,那就足够了。 ![]()
