我是Django和WordPress的新手,如果你创建了一个名为"hello world"的帖子,那么默认情况下的URL将是这样的
wordpress.com/2012/07/05/hello-world/
如果您创建另一个同名的帖子,它将是
wordpress.com/2012/07/05/hello-world-2/
我想在 Django 中实现相同的目标,我正在考虑创建一个这样的示例 urlconf
(r'^articles/(d{4})/(d{2})/(?P<name>w+)', 'article.views.article_detail')
并在视图中分解名称并循环访问所有项目并匹配名称。
但问题是我将无法动态引用帖子。例如,如果我要链接hello world帖子,我需要找出已经存在多少个同名的帖子,然后将额外的数字附加到其中,这是低效的。
那么在 Django 中做到这一点的最佳方法是什么?
请参阅 Django 的 {{ url }}
模板标签的文档。它允许您向其传递视图名称和参数,并自动生成正确的 URL。
您可以在生成其 slug 的函数中为每个帖子的名称附加数字 - 您可以查看 django-autoslug