【发布时间】:2022-11-14 04:20:49
【问题描述】:
当提交带有 Django-taggit 标签字段的表单时,包含多个单词的标签通过将标签用引号引起来保持在一起/不被空格分隔,例如“foo bar”应该创建 [“foo bar”] 的标签。但是,在支持智能引号的设备上,taggit 不会识别智能引号并将提交拆分为 [bar]、“foo”。
问题在于 utils 中的 _parse_tags 仅检查 '"' (unicode 34)。而在我的 iPhone 上,智能引号默认为 unicode 8220-1。当然,用户可以通过设置 > 常规 > 键盘禁用智能标点符号并关闭可以解决问题的智能标点符号。但是,要求用户解决问题似乎并不是真正的解决方案。
智能标点符号也不能在 clean_tags 中处理,因为 _parse_tags 在字段被清理后被上游调用。
【问题讨论】:
标签: django-taggit