django常用的三种特殊参数(path函数的name参数以及额外参数,render函数的context参数)

1.name参数:
形式:path(“goods/”, views.goods, name=“abc”)
给路由goods/ 起个别名,方便在模板中引用该路径
2.额外参数:
形式: path(“goods/”, views.goods, {“goods_name”: goods_name})
该参数没有具体命名,只要是字典形式即可,而且该参数只能在视图函数中读取和使用
3.context参数
render(request, “index.html”, context={“title”: "首页’})
对html模板的变量赋值,以字典格式表示,默认情况下是一个空字典,context关键字可省略
如:render(request, “index.html”, {“title”: "首页’})

话不多说,代码伺候:

urls.py
path("goods/", views.goods, name="goods"),
path("goods_info/", views.goodsInfo, name="goods_info",{"goods_name":goods_name})

views.py
def goods(request):
	return render(request, 'index.html',context={"title":"首页"})
	
def goodsInfo(request,goods_name):
	return render(request, 'goods_info.html',context={"goods_name": goods_name})
	# 视图函数接收path传递过来的额外参数,并通过render函数的context参数传递给模板goods_info.html


index.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>{{title}}</title> # 接受传递过来的context参数
</head>
<body>
    <a href="{% url 'goods_info' %}">跳转到商品详情页</a> # 使用name参数
</body>
</html>



goods_info.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>商品详情页</title> 
</head>
<body>
    {{goods_name}}   # 展示接收到的context参数
</body>
</html>


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值