wordpress多站点多模板,室内设计公司平面图,网页设计与制作简介,北京做微信网站哪家好Django动态路由实例
先说需求#xff1a;
比如我前端有两个按钮#xff0c;点击按钮1跳转到user1的用户信息页面#xff0c;按钮2跳转user2用户信息页面#xff0c;但是他俩共用同一个视图层
直接上代码
路由层
urlpatterns [path(user/str:username/, views…Django动态路由实例
先说需求
比如我前端有两个按钮点击按钮1跳转到user1的用户信息页面按钮2跳转user2用户信息页面但是他俩共用同一个视图层
直接上代码
路由层
urlpatterns [path(user/str:username/, views.user_home, nameuser_home),
]str:username获取前端输入的内容并传递给视图层
模板层
button onclickwindow.location.href{% url Blog:user_home usernameuser1 %}用户1信息/button
button onclickwindow.location.href{% url Blog:user_home usernameuser2 %}用户2信息/button定义两个按钮作为跳转
视图层
def user_home(request, username):user_info usernameprint(username)return render(request, adv2.html, locals())user_info获取前端传递的username参数并用locals()返回给adv2.html页面
渲染
adv2.html内容如下
!DOCTYPE html
html langen
headmeta charsetUTF-8titleTitle/title
/head
body
我是{{ user_info }}
/body
/html此时点击按钮1 点击按钮2 示例
实际应用中username的参数肯定也是不固定的因此批量应用就需要用到for循环语法
前端按钮
{% for adv in adv_list %}
button onclickwindow.location.href{% url Blog:user_home usernameadv.id %}查看用户{{ adv.id }}信息/button
{% endfor %}从视图层传入adv_list的数据
def adv(request):adv_list Adv.objects.all()return render(request, adv.html, locals())user_home视图不变
def user_home(request, username):user_info usernameprint(username)return render(request, adv2.html, locals())