首页 > 其他 > 详细

Django框架的探索

时间:2019-03-29 14:02:48      阅读:135      评论:0      收藏:0      [点我收藏+]

django框架的路由

django2 路由支持正则匹配,如:

re_path(r‘^category/(?P<category_id>\d+)/$‘,CourseCategoryView.as_view(),name="course_category"),
视图函数需要接收一个category_id的参数如:
class CourseCategoryView(View):
    """课程类别"""
    def get(self,request,category_id):
            pass
不然会报错,name的作用:后端可以通过reverse()动态生成url,使用如下:
from django.urls import reverse


class CourseCategoryView(View):
    """课程类别"""
    def get(self,request,category_id):
        course = Course.objects.filter(category=category_id).order_by("-fav_nums")
        try:
            cur_page = request.GET.get(‘num‘, 1)
        except Exception as e:
            cur_page = 1
        page = Pagination(cur_page, course.count())
        category = Category.objects.all()
        if course:
            url = reverse(‘course:course_category‘,kwargs={‘category_id‘:category_id})
            temp = ‘<a href="{0}" class="active">{1}</a>‘.format(url, course[0].category.name)
            page_str = page.get_page_str(url)
            return render(request,"course/course-category.html",
                          {"course_list":course[page.start:page.end_count],
                           "page_str": page_str,
                           "category_list": category,
                           "temp": mark_safe(temp)
                           })
        else:
            return redirect(reverse(‘course:course_list‘))

 前端使用如下:

{% load staticfiles %}
<a href="{% url ‘course:course_category‘ category_id %}">计算机</a>

  


 

Django框架的探索

原文:https://www.cnblogs.com/snow-wolf-1/p/10620659.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!