django path 后面的ID怎么加上啊,真心不会了
from django.urls import pathfrom . import views
urlpatterns = [
path('',views.index),
path('grades/',views.grades),
path('students',views.students),
path('grades/<int:name>',views.gradesStudents) #就是这里
这是报错,求前辈指点
Page not found (404)
Request Method:GET
Request URL:http://127.0.0.1:8000/grades/1%7D/
Using the URLconf defined in project001.urls, Django tried these URL patterns, in this order:
[*]admin/
[*]
[*]grades/
[*]students
[*]grades/<int:name>
[*]
[*]grades/
[*]students
[*]grades/<int:name>
The current path, grades/1}/, didn't match any of these.
You're seeing this error because you have DEBUG = True in your Django settings file. Change that to False, and Django will display a standard 404 page.
(?P<leixing>+_**)
?P<leixing>视图函数可以调用的参数名.+_**这一段就是leixing这个变量的范围
views里面就可以接收这个参数了
def model_show(request,leixing,xinghao):
不知道你是不是要这个意思 貌似跟flsk里面的一样,这个动态URL,你前面是不是没有加/没有匹配到吧。 <int:name>倒是没有错,后面的只要是整数值都会匹配到。 比如这样访问时:www.baidu.com/grades/123456是匹配的。 “将狗”还没有用,先学学FLASK+Myslq熟悉一下撒,大型框架必须都按照它的规则,微框架喜欢怎么玩就怎么玩。 html
<body>
<h1>班级信息列表</h1>
<ul>
<!--python04,python05,python06-->
{%for grade in grades%}
<li>
<a href="{{grade.id}}}"> {{grade.gname}} </a>
</li>
{%endfor%}
</ul>
</body>
views
def gradesStudents(request,num):
grade = Grades.objects.get(pk=num)
studentslist= grade.students_set.all()
return render(request,'myApp/students.html',{'students':studentslist})
app 下的 urls
from django.urls import path
from . import views
urlpatterns = [
path('',views.index),
path('grades/',views.grades),
path('students',views.students),
path('grades/<int:question_id>/',views.gradesStudents),#这一段
根目录下的url
from django.contrib import admin
from django.urls import path,include
urlpatterns = [
path('admin/', admin.site.urls),
path('',include('myApp.urls')),
path('',include('myApp.urls')),
path('<int:question_id>/',include('myApp.urls')) #path地址
本帖最后由 史莱克 于 2018-3-29 10:09 编辑
还是,不对 <a href="{{grade.id}}}"> {{grade.gname}} </a> 这里有点问题多个花括号.
我看你意思挺简单的.你要ID号可以这样
def gradesStudents(request):
id = request.GET['id'] #views里面加这句就可以获取id的值.
grade = Grades.objects.get(pk=id)
studentslist= grade.students_set.all()
return render(request,'myApp/students.html',{'students':studentslist})
html
<a href="?id={{grade.id}}"> {{grade.gname}} </a> tmkuej 发表于 2018-3-29 10:30
{{grade.gname}}这里有点问题多个花括号.
我看你意思挺简单的.你要ID号可以这样
def gradesStudents(r ...
非常感谢, 这个是django自带的方法.你想自己写可以参考https://code.ziqiangxuetang.com/django/django-views-urls.html,你上面是写对了的.方法对只是那个几变量名不一致导找不到页面
页:
[1]