Django基础(28): 如何设计充满陷阱的优美URL

一个优美的URL不仅层次分明、逻辑清晰,而且便于搜索引擎收录。一个糟糕的URL不仅可读性差,而且易造成程序冲突。我们今天就来看几个例子,教你如何在利用Django开发Web APP过程中设计充满陷阱的优美URL。是的,标题你没看错。此文涉及Django程序员的饭碗问题,请认真阅读,不吝点赞。

 

一个简单的例子

假设我们有一个名为blog的app,包含了Category和Article两个模型,其中Category与Article是一对多的关系,那么下面三个URL你一定不会陌生,一个用来展示文章列表,一个用来展示文章详情,一个按类别的slug名展示文章列表。完整模型见Django实战专题: 开发专业博客(1)之内容管理后台开发

from django.urls import path, re_path
from . import views

# namespace
app_name = 'blog'
urlpatterns = [
 # 展示文章列表
path('', views.article_list, name='article_list'),
# 按类别slug名展示文章列表
re_path(r'^category/(?P<slug>[-\w]+)/$',
views.CategoryDetailView.as_view(), name='category_detail'),
# 展示文章详情
re_path(r'^article/(?P<pk>\d+)/$',
views.ArticleDetailView.as_view(), name='article_detail'),

]

那么问题来了,展示文章详情的时候,展示的URL只是article/12/的形式,这个显然对搜索引擎不好。一个更好的方式根据article的title生成slug,将slug也通过URL展示出来,

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值