Django:HTML表单操作指向使用2个参数查看(或url?)
大约一周前开始学习
django并碰壁.真的很感激任何启蒙……
models.py class data(models.Model): course = models.CharField(max_length = 250) def __str__(self): return self.course HTML 将models.course中的对象转换为schlist <link rel="stylesheet" type="text/css" href="{% static '/chosen/chosen.css' %}" /> <form action={% views.process %} method="GET"> <div> <h4 style="font-family:verdana;">First Course: </h4> <select data-placeholder="Course" style="width:350px;" class="chosen-select" tabindex="7"> <option value=""></option> {% for item in schlist %} <option> {{ item }} </option> {% endfor %} </select> </div> </br> <div> <h4 style="font-family:verdana;">Second Course:</h4> <select data-placeholder="Course" style="width:350px;" class="chosen-select" tabindex="7"> <option value=""></option> {% for item in schlist %} <option> {{ item }} </option> {% endfor %} </select> </div> </br> <input type="submit" value="Compare!" /> </form> urls.py(怀疑我是否有效……) urlpatterns = [ url(r'^(d+)/(d+)$',views.process,name = 'process'),] view.py def process(request,q1,q2): obj1= get_object_or_404(Schdata,course = q1) obj2= get_object_or_404(Schdata,course = q2) ........ 想知道表格行动是否有可能将行动指向 (1)view.py或(2)url.py(并最终到一个view.py)选择了2个参数? 如果是这样,表格行动应该如何? {{view?}}或{{url?}}.我在HTML中错过了参数的定义吗? 导向views.py: 用户输入是CharField,可以使用get_object_or_404来获取模型pk.但是在定义我的urls.py时,我会得到一个Noreverse错误,因为我的url参数是主键. 指向urls.py: Url参数是主键.从我看到它的方式,我需要神奇地将我的用户输入Charfield转换为pk,然后将其传递给urls.py django中是否有(或)函数用于get()?例如get_object_or_404(pk = q1或course = q1)? 非常感谢任何建议.几个小时一直在盯着这个. 解决方法
您正试图在Django中使用URL的反向解析.
在你的html文件中,正确的表单操作url到下面的方法应该是POST: <form action={% url 'process' %} method="POST"> 如果您尝试传递参数,请使用以下命令: <form action={% url 'process' request.user.id 4 %} method="POST"> 参考: (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |