【发布时间】:2016-05-14 09:39:40
【问题描述】:
我正在尝试在我的博客应用程序上实现标签功能。
如何检查帖子的“文本”是否包含以“#”开头的单词,如果是,则将它们的 url 重定向到 /tags/~word~?
所以 f.e.用户可以写一篇文章“我今天去过#ny,很酷#yolo #summer”,因此它将创建#ny、#yolo、#summer 标签并使其成为重定向到/tags/ny/、/的url标签/yolo/,和/tags/summer/,
我学习 python 和 django 的时间只有一两个星期,可能有一些我不知道的功能 :)
【问题讨论】:
-
您可能还想查看 'taggit' 包:django-taggit.readthedocs.io/en/latest
-
对不起@obi,我要删除我的答案,因为这实际上是个坏主意,您不应该将原始 HTML 放在这样的字符串中(Django 甚至会尝试在您的模板中阻止您)。其他更了解 Django 的人将不得不回答。
-
使用模板标签和正则表达式。
-
确保首先清理文本(转义有潜在危险的字符)然后然后添加您的HTML。因为您需要使用
mark_safe()将其标记为安全,因此,它实际上应该是安全的。