1.urls.py中写入 # -*- coding: utf-8 -*- import sys reload(sys) sys.setdefaultencoding('utf8') from django.conf.urls import url # .代表当前目录 # ..代表上级目录 from . import views urlpatterns = [ # 通过localhost:8000/app/路径,也可以访问到网站的首页 url(r'^$',views.index,name='app_index'), # 登录的路由 url(r'^login/',views.log_in,name='login'), # 注销的路由 url(r'^logout/$',views.log_out,name='logout'), # 注册的路由 url(r'^register/$',views.register,name='register'), # 配置文章详情的路由 <article_id>,用于接收前端a标签传递的id,并传给相应的视图函数 url(r'^(?P<article_id>[0-9]+)/$',views.article,name='article'), # 配置评论路由 url(r'(?P<article_id>[0-9])/comment/$',views.comment,name='comment'), # 配置收藏路由 url(r'(?P<article_id>[0-9])/keep/$', views.keep, name='keep'), # 配置点赞路由 url(r'(?P<article_id>[0-9])/poll/$', views.poll, name='poll'), ] 2.views.py视图中写入# 设置文章详情页面的视图函数 # @login_required要求必须先登录,才能访问Article的视图函数,否则会要求先登录 @login_required def article(request,article_id): # get_object_or_404():是在查询模型对象时,如果该对象不存在,那么就显示Django内置的404页面展示给用户,比直接显示异常信息更加友好。 article_obj = get_object_or_404(Article,id=article_id) # 文章的内容 content = article_obj.content # 文章标题 title = article_obj.title # 文章的所有评论 comments = article_obj.comment_set.all() # 创建LoginForm和CommentForm表单,渲染到article_page.html中显示 commentform = CommentForm() loginform = LoginForm() return render(request,'article_page.html',{ 'article_title':title,# 标题 'article':article_obj,# 文章对象 'loginform':loginform,#登录表单 'commentform':commentform,#评论表单 'content':content,#文章内容 'comments':comments,#文章的所有评论 })
Django中设置路由参数
最新推荐文章于 2025-05-28 11:34:58 发布