Django 将 URL 重定向到最新创建的博客文章

发布于 2024-10-26 09:41:33 字数 324 浏览 1 评论 0原文

我希望在 urls.py 中进行重定向,以便当人们访问博客应用程序索引域时自动加载我的博客应用程序中的最新帖子条目。

Blog.Post 详细信息通过 blog.views.post_detail(request, slug) 方法提供,博客文章将以 URL 结尾:

www.example.com/blog/this-is-the-slug/

当有人加载 www.example.com/blog 域时,我希望它们自动重定向到最新的博客文章个人条目。

我对 urls.py 很陌生,不知道如何做到这一点。我意识到这将是相当初级的。

I want to have a redirect in my urls.py so that the latest Post entry in my Blog application is automatically loaded when people visit the Blog application index domain.

A Blog.Post detail is supplied via the blog.views.post_detail(request, slug) method and a blog post will end up with the URL:

www.example.com/blog/this-is-the-slug/

When someone loads the www.example.com/blog domain I want them to be automagically redirected to the latest blog post individual entry.

I'm very new to the urls.py and can't work out how to do this. I realise it would be fairly rudimentary.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

翻身的咸鱼 2024-11-02 09:41:33
url(r'^blog/

另一种选择,有些人不喜欢反向,因为它会失败得很厉害。

您可以在博客文章模型上定义一个返回绝对 URL 的 get_absolute_url 方法,然后您的重定向就像 http.HttpResponseRedirect(Blog.objects.latest('id').get_absolute_url 一样简单())

, 'blog.redirector'), url(r'^blog/(?P<slug>[-\w]+)/

另一种选择,有些人不喜欢反向,因为它会失败得很厉害。

您可以在博客文章模型上定义一个返回绝对 URL 的 get_absolute_url 方法,然后您的重定向就像 http.HttpResponseRedirect(Blog.objects.latest('id').get_absolute_url 一样简单())

, 'blog.blog_post', name="blog_detail"), def redirector(request): blog = Blog.objects.latest('id') return http.HttpResponseRedirect(reverse('blog_detail', args=[blog.slug]))

另一种选择,有些人不喜欢反向,因为它会失败得很厉害。

您可以在博客文章模型上定义一个返回绝对 URL 的 get_absolute_url 方法,然后您的重定向就像 http.HttpResponseRedirect(Blog.objects.latest('id').get_absolute_url 一样简单())

url(r'^blog/

Alternative option, some people dislike reverse because it fails loudly.

You can define a get_absolute_url method on your blog post model that returns the absolute url, then your redirect is as simple as http.HttpResponseRedirect(Blog.objects.latest('id').get_absolute_url())

, 'blog.redirector'), url(r'^blog/(?P<slug>[-\w]+)/

Alternative option, some people dislike reverse because it fails loudly.

You can define a get_absolute_url method on your blog post model that returns the absolute url, then your redirect is as simple as http.HttpResponseRedirect(Blog.objects.latest('id').get_absolute_url())

, 'blog.blog_post', name="blog_detail"), def redirector(request): blog = Blog.objects.latest('id') return http.HttpResponseRedirect(reverse('blog_detail', args=[blog.slug]))

Alternative option, some people dislike reverse because it fails loudly.

You can define a get_absolute_url method on your blog post model that returns the absolute url, then your redirect is as simple as http.HttpResponseRedirect(Blog.objects.latest('id').get_absolute_url())

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文